Heim > Web-Frontend > js-Tutorial > Hauptteil

Beispielanalyse für JS-Blasensortierung, Auswahlsortierung und Einfügungssortierung

小云云
Freigeben: 2017-12-14 09:25:12
Original
2190 Leute haben es durchsucht

Dieser Artikel stellt hauptsächlich die Blasensortierung, Auswahlsortierung und Einfügungssortierung des JS-Sortieralgorithmus vor. Er analysiert die Konzepte, Prinzipien und Implementierungsmethoden der Blasensortierung, Auswahlsortierung und Einfügungssortierung in Form von Beispielen Ich hoffe, ich kann allen helfen.

Blasensortierung:

Vergleichen Sie die Größen zweier benachbarter Zahlen nacheinander für die Daten im Array.

Wenn die vorherigen Daten größer sind als die späteren Daten, tauschen Sie die beiden Zahlen aus.

ZeitkomplexitätO(n^2)

function bubble(array){
 var temp;
 for(var i=0; i<arr.length; i++){
  for(var j=0; j<arr.length; j++){
   if(arr[j]>arr[j+1]){
    temp = arr[j+1];
    arr[j+1] =arr[j];
    arr[j]=temp;
   }
  }console.log(arr);
 }
}//冒泡排序
Nach dem Login kopieren

Auswahlsortierung:

Wählen Sie zunächst die kleinsten Daten aus dem ursprünglichen Array aus und tauschen Sie diese mit den Daten an Position 1 aus.

Wählen Sie aus den verbleibenden n-1 Daten die nächstkleineren Daten aus und tauschen Sie sie mit den Daten an der zweiten Position aus.

Wiederholen, bis die letzten beiden Daten ausgetauscht sind.

ZeitkomplexitätO(n^2)

function selectionSort(array){
 var min,temp;
 for(var i=0; i<array.length-1; i++){
  min=i;
  for(var j=i+1; j<array.length; j++){
   if(array[j]<array[min]){
    min=j;
   }
  }
  swap(array,min,i);
 }
 console.log(array);
}//选择排序
function swap(array,i,j){
 var temp =array[i];
 array[i]=array[j];
 array[j]=temp;
}//两个数字交换
Nach dem Login kopieren

Einfügungssortierung:

Vergleichen Sie zunächst die ersten beiden Daten von klein nach groß.

Vergleichen Sie dann die dritten Daten mit den ersten beiden angeordneten Daten und fügen Sie die dritten Daten an der entsprechenden Position ein. Und so weiter.

(Einfügesortierung hat zwei Schleifen. Die äußere Schleife verschiebt die Arrays einzeln, und die innere Schleife vergleicht das von der äußeren Schleife ausgewählte Element mit der Zahl davor.)

Zeitliche Komplexität O(n^2)

function insertSort(arr){
 var temp, j;
 for(var i=1; i<arr.length; i++){
  temp =arr[i];
  j=i;
  while(j>0 && arr[j-1]>temp){
   arr[j]=arr[j-1];
   j--;
  }
  arr[j]=temp;
 }
}
Nach dem Login kopieren

Verwandte Empfehlungen:

Zählsortierung implementiert durch JS Beispiele für Radix-Sortieralgorithmus_Javascript-Fähigkeiten

Detaillierte Erklärung des Sortieralgorithmus

Detaillierte Erklärung der Javascript-Array-Deduplizierung und Beispiele für schnelle Sortieralgorithmen

Das obige ist der detaillierte Inhalt vonBeispielanalyse für JS-Blasensortierung, Auswahlsortierung und Einfügungssortierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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