选择排序算法的核心是找到数据中的最小值放置到第一位,接着找到第二最小的值并放到第二位,以此类推。代码演示如下:
1 let arr = [5, 7, 3, 9, 1] 2 3 function swap(arr, index1, index2) { 4 var temp = arr[index1] 5 arr[index1] = arr[index2] 6 arr[index2] = temp 7 } 8 9 function changeSort(arr) { 10 for (i = 0; i < arr.length - 1; i++) { 11 let minIndex = i 12 for (j = i; j < arr.length; j++) { 13 if (arr[minIndex] > arr[j]) { 14 minIndex = j 15 } 16 } 17 if (i !== minIndex) { 18 swap(arr, i, minIndex) 19 } 20 } 21 } 22 23 changeSort(arr) 24 console.log(arr) // 结果 [ 1, 3, 5, 7, 9 ]