国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

JS基于對象的鏈表實現與使用方法示例

2019-11-19 12:11:13
字體:
來源:轉載
供稿:網友

本文實例講述了JS基于對象的鏈表實現與使用方法。分享給大家供大家參考,具體如下:

鏈表是一種在物理內存上不連續的數據結構。原理如下圖所示:

示例代碼:

/*JS實現一個基于對象的鏈表*/function Node(element){  this.element = element;//節點存儲的元素  this.next = null;//節點指向的下一個節點,這里先設置為空}function LList(){  this.head = new Node("head");//生成一個頭節點  this.find = find;//在鏈表中找到某個節點  this.insert = insert;//在鏈表中某個元素后面插入某個節點元素  this.display = display;//在將鏈表中的節點元素顯示出來  this.findPrevious = findPrevious;//找到某個節點的上一個節點  this.remove = remove;//刪除某個節點}function remove(item) {  var prevNode = this.findPrevious(item);  if (!(prevNode.next == null)) {    prevNode.next = prevNode.next.next;  }}function findPrevious(item) {  var currNode = this.head;  while (!(currNode.next == null) &&    (currNode.next.element != item)) {    currNode = currNode.next;  }  return currNode;}function display() {  var currNode = this.head;  var nodestr = "";  while (!(currNode.next == null)) {    nodestr +=" "+currNode.next.element;    currNode = currNode.next;  }  console.log(nodestr);}function find(item) {  var currNode = this.head;  while (currNode.element != item) {    currNode = currNode.next;  }  return currNode;}function insert(newElement, item) {  var newNode = new Node(newElement);  var current = this.find(item);  newNode.next = current.next;  current.next = newNode;}/*測試例子*/var num = new LList();num.insert("a1","head");num.insert("b1","a1");num.insert("c1","b1");num.display();// a1 b1 c1num.remove("b1");num.display();// a1 c1

這里使用在線HTML/CSS/JavaScript代碼運行工具http://tools.VeVB.COm/code/HtmlJsRun測試上述代碼,可得如下運行結果:

更多關于JavaScript相關內容感興趣的讀者可查看本站專題:《JavaScript數據結構與算法技巧總結》、《JavaScript數學運算用法總結》、《JavaScript排序算法總結》、《JavaScript遍歷算法與技巧總結》、《JavaScript查找算法技巧總結》及《JavaScript錯誤與調試技巧總結

希望本文所述對大家JavaScript程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 武宁县| 万荣县| 康保县| 郓城县| 涡阳县| 大丰市| 湖州市| 东至县| 左云县| 满洲里市| 安泽县| 屏边| 涿州市| 亳州市| 临漳县| 乌审旗| 永德县| 历史| 固始县| 东丰县| 陇南市| 雅江县| 巴东县| 乌兰县| 金乡县| 天等县| 翁源县| 樟树市| 扬中市| 鹤峰县| 桦甸市| 云阳县| 衡东县| 板桥市| 陈巴尔虎旗| 阿拉善右旗| 即墨市| 高清| 康乐县| 永平县| 马鞍山市|