js鏈表操作(實(shí)例講解)
如下所示:
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <script> function Node(v){ this.value=v; this.next=null; } function ArrayList(){ this.head=new Node(null); this.tail = this.head; this.append=function(v){ node = new Node(v); this.tail.next=node; this.tail=node; } this.insertAt=function(ii,v){ node = new Node(v); //找到位置的節(jié)點(diǎn) tempNode=this.head; for(i=0;i<ii;i++){ if(tempNode.next!=null){ tempNode=tempNode.next; }else{ break; } } node.next=tempNode.next; tempNode.next = node; } this.removeAt=function(ii){ node1=this.head; //要?jiǎng)h除節(jié)點(diǎn)的前一個(gè)節(jié)點(diǎn) for(i=0;i<ii;i++){ if(node1.next!=null){ node1=node1.next; }else{ break; } } node2=node1.next; //要?jiǎng)h除的節(jié)點(diǎn) if(node2!=null){ node1.next = node2.next; if(node2.next==null){ this.tail=node1; } } } } function Iterator(arryList){ this.point=arryList.head; this.hasNext=function(){ if(this.point.next!=null){ this.point=this.point.next; return true; }else{ return false; } } this.next=function(){ return this.point.value; } } var arry = new ArrayList(); arry.append(1); arry.append(2); arry.append(3); arry.insertAt(1,8); arry.insertAt(0,9); arry.insertAt(100,100); arry.insertAt(1000,1000); arry.insertAt(1,200); arry.insertAt(200,2000); iterator = new Iterator(arry); while(iterator.hasNext()){ document.write(iterator.next()); document.write('<br/>'); } </script> </head> <body> </body> </html>
以上這篇js鏈表操作(實(shí)例講解)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
js高精度計(jì)算decimal.js庫(kù)用法demo
這篇文章主要給大家介紹了關(guān)于js高精度計(jì)算decimal.js庫(kù)用法的相關(guān)資料,decimal.js是使用的二進(jìn)制來計(jì)算的,所以能解決js的精度問題,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-11-11json對(duì)象轉(zhuǎn)為字符串,當(dāng)做參數(shù)傳遞時(shí)加密解密的實(shí)現(xiàn)方法
下面小編就為大家?guī)硪黄猨son對(duì)象轉(zhuǎn)為字符串,當(dāng)做參數(shù)傳遞時(shí)加密解密的實(shí)現(xiàn)方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-06-06國(guó)外JavaScript經(jīng)典封裝集合整理
國(guó)外JavaScript經(jīng)典封裝集合整理...2007-05-05網(wǎng)頁(yè)整體變灰白色(兼容各瀏覽器)實(shí)例
網(wǎng)頁(yè)整體變灰白色(兼容各瀏覽器)實(shí)例,需要的朋友可以參考一下2013-04-04微信小程序設(shè)置全局請(qǐng)求URL及封裝wx.request請(qǐng)求操作示例
這篇文章主要介紹了微信小程序設(shè)置全局請(qǐng)求URL及封裝wx.request請(qǐng)求操作,結(jié)合實(shí)例形式分析了微信小程序針對(duì)wx.requset請(qǐng)求的封裝及調(diào)用操作相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2019-04-04詳解webpack require.ensure與require AMD的區(qū)別
本篇文章主要介紹了詳解webpack require.ensure與require AMD的區(qū)別,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-12-12javascript實(shí)現(xiàn)input file上傳圖片預(yù)覽效果
這篇文章主要介紹了javascript實(shí)現(xiàn)input file上傳圖片預(yù)覽效果,感興趣的小伙伴們可以參考一下2015-12-12動(dòng)態(tài)生成的IFRAME,設(shè)置SRC時(shí)的,不同位置帶來的影響
動(dòng)態(tài)生成的IFRAME,設(shè)置SRC時(shí)的,不同位置帶來的影響。 以下所說的是在IE7下運(yùn)行的。IE6下也是同樣。 在這個(gè)blog中,直接點(diǎn)擊運(yùn)行代碼,和把下面代碼保存到為網(wǎng)頁(yè)在運(yùn)行(以本地文件或域名訪問),效果不一樣。2008-03-03JS實(shí)現(xiàn)簡(jiǎn)單的文字無縫上下滾動(dòng)功能示例
這篇文章主要介紹了JS實(shí)現(xiàn)簡(jiǎn)單的文字無縫上下滾動(dòng)功能,結(jié)合實(shí)例形式分析了JavaScript結(jié)合時(shí)間函數(shù)動(dòng)態(tài)操作頁(yè)面元素屬性變換實(shí)現(xiàn)文字滾動(dòng)功能相關(guān)操作技巧,需要的朋友可以參考下2019-06-06