Heim > Web-Frontend > js-Tutorial > Erstellen Sie eine verknüpfte Liste mit js-Objekten

Erstellen Sie eine verknüpfte Liste mit js-Objekten

高洛峰
Freigeben: 2016-10-08 14:57:09
Original
1097 Leute haben es durchsucht

//Das Folgende ist eine verknüpfte Listenklasse

Funktion LinkedList(){


//Node stellt das Element dar, das der Liste hinzugefügt werden soll
var Node= function(element){

<br/>
Nach dem Login kopieren

This.element=element;
this.next=null;
};

var length=0;//Speichert die Nummer von Listenelementen
var head=null; //head speichert einen Verweis auf den ersten Knoten

//Elemente an das Ende der verknüpften Liste anhängen
this.append=function( element){
 var node =new Node(element),
Current;

if(head===null){
head=node

 while( current.next){
  current=current.next;
  }

 current.next=node;

 }

length ;
};


//Ein Element an einer beliebigen Position in der verknüpften Liste einfügen
this.insert=function(position,element){

if(position>=0&&position< =length){

<br/> var node=new Node(element),<br/> current=head,<br/> previous,<br/> index=0;<br/><br/> if(position=== 0){<br/> node.next=current;<br/>head=node;<br/><br/>else{<br/>while(index-1 && position var current=head,
previous,
index=0;

if(position===0){
>   }
   previous.next=current.next;

  }

 length--;

  return current.element;
 }else{
return null;
 }
};

//Return die Position des Elements in der verknüpften Liste
this.indexOf=function(element){
 var current=head,
index=-1;

while(current){
if(element===current.element){
return index;
index current.next;
 }

return -1;
};


//Ein Element entfernen
this.remove=function(element) {
 var index=this.indexOf(element);
 return this.removeAt(index);
};

//Beurteilen Sie, ob die verknüpfte Liste leer ist

this .isEmpty=function(){
 return length===0;
};

//Die Länge der verknüpften Liste zurückgeben
this.size=function(){
return length ;

};


//Das LinkedList-Objekt in einen String konvertieren

this.toString=function(){
 var current=head,

 string=" ";

while(current){

string=current.element;
current =current.next;
}

return string;

};

};

var list=new LinkedList();

list.append(15 );

list.append(10);

list.insert(1,11);
list.removeAt(2)
console.log(list.size());



Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage