Javascript sıralama algoritmaları performans karşılaştırması hakkında bazı research yaptım ve beklenmeyen sonuçlar bulundu. Kabarcık sıralama, Kabuk sıralama, Hızlı sıralama ve yerel Javascript işlevselliği gibi diğerlerinden çok daha iyi bir performans sağladı. Bu neden oluyor? Belki performans testi yöntemimde yanlış mıyım?Neden Kabarcık Javascript uygulaması sıralama sıralama algoritmalarından çok daha hızlı?
Araştırma sonuçlarımmı here bulabilirsiniz. İşte
bazı algoritma uygulama örnekleri şunlardır: kabarcık sıralama is hızlı Zaten sıralanır bir dizi sıralama zaman çünkü var/**
* Bubble sort(optimized)
*/
Array.prototype.bubbleSort = function()
{
var n = this.length;
do {
var swapped = false;
for (var i = 1; i < n; i++) {
if (this[i - 1] > this[i]) {
var tmp = this[i-1];
this[i-1] = this[i];
this[i] = tmp;
swapped = true;
}
}
} while (swapped);
}
/**
* Quick sort
*/
Array.prototype.quickSort = function()
{
if (this.length <= 1)
return this;
var pivot = this[Math.round(this.length/2)];
return this.filter(function (x) { return x < pivot }).quickSort().concat(
this.filter(function (x) { return x == pivot })).concat(
this.filter(function (x) { return x > pivot }).quickSort());
}
"Filter", diğer "quickSort" ve "concat" kelimelerinin çağrılması, quickSort'u son derece yavaşlatıyor. – JiminP