JSFiddle - React, Tailwind, and code Playground

by etianqq

JavaScript

// 选择排序
//
// 选择排序从数组的开头开始,将第一个元素和其他元素进行比较。
// 检查完所有元素后,最小的元素会被放到数组的第一个位置,然后算法会从
// 第二个位置继续。这个过程一直进行,当进行到数组的倒数第二个位置时,
// 所有的数据便完成了排序。
function selectionSort(numElements) {
   var temp;
   var len = numElements.length;
   for (var outer = 0; outer <= len-2; ++outer) {
      min = outer;
      for (var inner = outer + 1; inner <= len-1; ++inner) {         
         if (numElements[inner] < numElements[min]) {
            min = inner;  
         }
      }
      swap(numElements, outer, min);
   }
}  

function swap(arr, index1, index2) {
   var temp = arr[index1];
   arr[index1] = arr[index2];
   arr[index2] = temp;
}

var elements = [6,8,0,6,7,4,3,1,5,10];

chooseSort(elements);

document.write(elements.toString());