js實現資料結構及演算法之列表 List

2021-09-11 13:22:35 字數 2267 閱讀 4234

最近在學習資料結構及演算法,資料結構:列表,棧,佇列,鍊錶,字典,雜湊,集合,二叉樹;演算法:圖和圖演算法,排序演算法:冒泡、選擇、插入、希爾、歸併、快速,檢索演算法:順序查詢,二分查詢;還有高階一點的動態規劃貪心演算法,這些都會用js一一實現,算是記錄下來,給自己以後複習用吧。

先上**:列表

列表是一組有序的資料,每個列表中資料被稱為元素,元素的數量受記憶體控制。

不包括任何元素的列表稱為空列表。

不需要很長序列查詢元素或排序,元素不是很多。

/**

* 乙個簡單的列表

* @constructor

*/function

list

() /**

* 給列表最後新增元素的時候,列表元素個數+1

* @param element

*/ this.listsize++;

this.datasource.push(element);

}/**

* @param element 如果傳入的是物件,需要判斷是否是物件以及兩個物件是否相等

* @returns 如果找到,返回位置,否則-1

*/function find(element)

} return -1;

}/**

* 返回列表元素的個數

* @returns

*/function

getlength

() /**

* 刪除元素成功,元素個數-1

* @param element

* @returns

*/function remove(element)

return

false;

}/**

* 返回要展示的列表

* @returns

*/function

tostring

() /**

* 插入某個元素

* @param element 要插入的元素

* @param afterelement 列表中的元素之後

* @returns

*/function insert(element, afterelement)

return

false;

}/**

* 清空列表中的所有元素

*/function

clear

() /**

* 將列表的當前位置移動到第乙個元素

*/function

front

() /**

* 將列表的當前位置移動到最後乙個元素

*/function

end()

/** * 返回當前位置的元素

* @returns

*/function

getelement

() /**

* 將當前位置向前移動一位

*/function

prev

() /**

* 將當前位置向後移動一位

*/function

next

() /**

* 返回列表的當前位置

* @returns

*/function

currentpos

() /**

* 移動到指定位置

* @param position

*/function moveto(position)

/** * 是否包含某個元素

* @param element

* @returns

*/function contains(element)

/** * 迭代器:遍歷出所有的元素及其位置

* @param function(index, data)

*/function loop (cb) )(index, loopitem)

}}var name = new list()

// console.log(name);

console.log(name.getelement())

name.next()

console.log(name.getelement())

name.loop(function (index, looitem) )

console.log(name.contains('小lan'))

複製**

JS 演算法與資料結構之列表

js 如何建立乙個簡單的列表類?以下將描述如何實現該抽象資料型別 adt 列表是一組有序的資料,每個列表中的資料項稱為元素 在 js 中,列表的元素可以是任意資料型別,且列表儲存多少元素沒有事先限定 要設計列表的抽象資料型別,我們需要列出列表的屬性及方法 屬性名作用 listsize 列表的元素個數...

資料結構之列表

在基礎資料結構中,列表作為最為基礎的乙個資料結構進行體現,在乙個程式中決定效率的關鍵核心因素就是資料結構和資料演算法,二者共同決定 時間複雜度的型別,因此萬丈高樓平地起,就從最基礎的列表操作和分析其時間複雜度開始 方法1 列表賦值 lis 方法2 列表疊加 列表疊加要注意,疊加的是可迭代物件 新增列...

python資料結構之列表

和字串一樣,列表也是python中使用最普遍的資料結構之一,而且它很靈活,可以儲存多種不同的物件 數字,字串,甚至於其他的列表。列表的建立方法 1 利用python的內建方法list l1 list python l1 p y t h o n 2 直接賦值給方括號,元素之間用逗號隔開 l2 1,2,...