陣列
鍊錶
封裝鍊錶類的常見方法:
(2)實現tostring方法
linkedlist.prototype.tostring = function()
return liststring
}
測試**
(3)實現insert方法
插入元素的情況分析
當插入的位置資訊為position為0 的位置
當插入的位置為某乙個大於0的位置(注意,這裡的position和index索引的取的方式一樣,從第乙個節點開始計算,head不計算在內)(這種情況下的話是包含插入的位置為length的情況)
linkedlist.prototype.insert = function(position,data)else
return current.data
}
(5)實現indexof方法
linkedlist.prototype.indexof = function(data)
// 如果沒有找到,更新當前的current和index
current = current.next
index +=1
}return -1
}
(6)實現update方法
linkedlist.prototype.update = function(position,newdata)
current.data = newdata
return true
}
(7)實現removeat()方法
linkedlist.prototype.removeat = function(position)else
(9)實現isempty (),size ()方法
linkedlist.prototype.isempty = function()
linkedlist.prototype.size = function()
學習javaScript資料結構與演算法
建立陣列 var members 0,1,2,3,4,5,6,7,8 9,10 新增元素 向陣列末尾新增 members.push 11 向陣列開頭新增 members.unshift 1 刪除元素 從陣列末尾刪除 members.pop 從陣列開頭刪除 members.shift tips 通過p...
javascript資料結構與演算法 集合
集合是由一組無序且唯一 即不能重複 的項組成的。類似於一種特殊的陣列,因為無序所以不能通過索引進行訪問,不能重複意味著相同的元素在聽乙個集合裡面是只能存在乙份。封裝乙個集合類 在集合內部是不需要再次進行內部類的。function set 方法 常見的方法 add value 向集合新增乙個新的項。r...
資料結構 棧(JavaScript)
棧是一種遵從後進先出 lifo 原則的有序集合。新新增的或待刪除的元素都儲存在棧的 末尾,稱作棧頂,另一端就叫棧底。在棧裡,新元素都靠近棧頂,舊元素都接近棧底。舉個栗子,差不多這樣子。初始化棧的高度以及棧頂指標 var length 0 var top null 宣告常用方法 this.push f...