选择排序

  • 选择排序

  • 选择排序从数组的开头开始,将第一个元素和其他元素进行比较。检查完所有元素后,最小的元素会被放到数组的第一个位置,然后算法会从第二个位置继续。这个过程一直进行,当进行到数组的倒数第二个位置时,所有的数据便完成了排序。

  • 选择排序会用到嵌套循环。外循环从数组的第一个元素一定到倒数第二个元素;内循环从第二个数组元素移动到最后一个元素,查找比当前外循环

function selectionSort() {
  var min,temp;
  for (var outer = 0; outer <= this.dataStore.length-2; ++outer){//循环
    min = outer;//定义第一个为最小
    for (var inner = outer + 1; i <this.dataStore.length-1; ++inner) {
    //查找下一个中
      if (this.dataStore[inner]<this.dataStore[min]){
      //如果数组内的第inner项小于最小项
        min = inner;//最小项设置为inner
      }
      swap(this.dataStore,outer,min);//交换最小值和outer
    }
  }  
}
//找到数组中剩余的最小值,如果更小outer进行交换

最后更新于