javascript - 使用没有 sort() 方法的数字对数组进行排序

标签 javascript arrays sorting

<分区>

我正在学习 Javascript,我一直坚持在教程中找到的一个练习,我认为它是 learn street.com...我必须在不使用 sort() 方法的情况下用数字对数组进行排序。像这样:

numbers =[12,10,15,11,14,13,16];

从今天早上开始,我已经尝试了很多东西,但我找不到如何做到这一点。任何人都可以帮忙吗?我也需要解释,不仅仅是答案!

谢谢

哦,看看我现在有什么:

function ordre(liste){
var result=[];


for(i=0; i<liste.length; i++){

for(j=0; j<liste.length; j++){
        if(liste[i]>liste[j+1]){

        }
    }

 }

 console.log( result );
}

ordre(nombres);

最佳答案

这是一个Bubble sort功能供您引用,但如前所述,有许多不同的sorting algorithms .

function bubbleSort(array) {
  var done = false;
  while (!done) {
    done = true;
    for (var i = 1; i < array.length; i += 1) {
      if (array[i - 1] > array[i]) {
        done = false;
        var tmp = array[i - 1];
        array[i - 1] = array[i];
        array[i] = tmp;
      }
    }
  }

  return array;
}

var numbers = [12, 10, 15, 11, 14, 13, 16];
bubbleSort(numbers);
console.log(numbers);

关于javascript - 使用没有 sort() 方法的数字对数组进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16243366/

相关文章:

Java ArrayList - 不设置现有元素

C++ 结构指针数组

php - 在 PHP 中,如何将具有已知键的数组元素移动到数组的末尾?

algorithm - 归并排序的变体

java - stdrandom shuffle 方法的工作原理

javascript - KNockoutJS 与 jQuery 数据表,绑定(bind)行未正确更新

javascript - 使用javascript检索嵌入视频的宽度

c++ - 如何从方法返回未知大小的字节数组

javascript - 暂时断开的 Javascript 事件之间状态保留的最佳实践?

javascript - 在多维数组javascript或coffeescript中获取最大值