Heim > Web-Frontend > js-Tutorial > Hauptteil

So implementieren Sie eine schnelle Sortierung mit JavaScript (ausführliches Tutorial)

亚连
Freigeben: 2018-06-12 17:00:42
Original
1503 Leute haben es durchsucht

Dieser Artikel stellt hauptsächlich die Methode von JavaScript zur Implementierung der Schnellsortierung vor und analysiert die Prinzipien, Implementierungsmethoden und zugehörigen Betriebsvorkehrungen der Schnellsortierung in Form von Beispielen

Die Beispiele in diesem Artikel beschreiben, wie die schnelle Sortierung in JavaScript implementiert wird. Teilen Sie es als Referenz mit allen:

Ideologie:

Verwenden Sie die Divide-and-Conquer-Idee und die rekursive Methode Zerlegen Sie die Daten nacheinander in kleinere und größere Elemente.

1 Wählen Sie ein Element im Array als Benchmark aus.

2 Der Benchmark wird nach links vom Benchmark verschoben. Elemente, die größer als der Benchmark sind, werden nach rechts vom Benchmark verschoben.

3. Wiederholen Sie die ersten beiden Schritte für die beiden Teilmengen links und rechts vom Benchmark, bis Es bleibt nur ein Element in allen Teilmengen übrig

Implementierungscode:

function sqort(arr){
 if(arr.length===0){
 return [];
}
var left=[];
var right=[];
var pivot=arr[0];//(基准以首元素)
for(var i=1;i<arr.length;i++){
 if(arr[i]<pivot){
 left.push(arr[i]);
}else{
 right.push(arr[i]);
}
}
return sqort(left).concat(pivot,qsort(right));//递归
}
var a=[];
for (i=0;i<10;++i){
a[i]=Math.floor(Math.random()*100+1);
}
console.log(a);
console.log(sqort(a));
//(基准以中间元素的情况)
function sqort(arr){
 if(arr.length<=1){
 return arr;
}
var left=[];
var right=[];
var pivotIndex=Math.floor(arr.length/2);
var pivot=arr.splice(pivotIndex,1)[0];//(基准以中间元素)
for(var i=1;i<arr.length;i++){
 if(arr[i]<pivot){
 left.push(arr[i]);
}else{
 right.push(arr[i]);
}
}
return sqort(left).concat(pivot,sqort(right));//递归
}
var a=[12,34,23,78,34,26];
console.log(a);
console.log(sqort(a));
Nach dem Login kopieren

Das Obige habe ich für alle zusammengestellt an alle in der Zukunft.

Verwandte Artikel:

Detaillierte Interpretation von Elementen, Komponenten, Instanzen und Knoten in React

So fügen Sie Daten dynamisch in AngularJS hinzu und löschen?

Welche Wissenspunkte des strikten JS-Modus werden im Detail erläutert?

Das obige ist der detaillierte Inhalt vonSo implementieren Sie eine schnelle Sortierung mit JavaScript (ausführliches Tutorial). 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
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!