這篇文章主要講解了“js的鏈表操作實例”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“js的鏈表操作實例”吧!
如下所示:
<!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);
//找到位置的節點
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; //要刪除節點的前一個節點
for(i=0;i<ii;i++){
if(node1.next!=null){
node1=node1.next;
}else{
break;
}
}
node2=node1.next; //要刪除的節點
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的鏈表操作實例”的內容了,經過本文的學習后,相信大家對js的鏈表操作實例這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。