标签:-- sele pre index void nbsp 过程 cts 最小
排序算法-------选择排序
排序目标集合:{1,9,2,8,3,7,4,6,5,0}
排序方法代码:
1 // 选择法排序(升序) 2 private static void selectSort(Integer[] numbers) { 3 int numLength = numbers.length; // 数组长度 4 int indexFlag; 5 int j = 0; 6 for (int i = 0; i < numLength - 1; i++) { 7 8 indexFlag = i; // 标记排序开始元素的下标 9 for (j = i + 1; j < numLength; j++) { 10 if (numbers[indexFlag] > numbers[j]) { 11 indexFlag = j; // 标记值最小的元素下标 12 } 13 } 14 // 根据元素下标,将值最小的元素和开始排序元素交换 15 int tempNum = numbers[indexFlag]; 16 numbers[indexFlag] = numbers[i]; 17 numbers[i] = tempNum; 18 19 20 } 21 }
排序过程:
第1趟排序:0 9 2 8 3 7 4 6 5 1
第2趟排序:0 1 2 8 3 7 4 6 5 9
第3趟排序:0 1 2 8 3 7 4 6 5 9
第4趟排序:0 1 2 3 8 7 4 6 5 9
第5趟排序:0 1 2 3 4 7 8 6 5 9
第6趟排序:0 1 2 3 4 5 8 6 7 9
第7趟排序:0 1 2 3 4 5 6 8 7 9
第8趟排序:0 1 2 3 4 5 6 7 8 9
第9趟排序:0 1 2 3 4 5 6 7 8 9
标签:-- sele pre index void nbsp 过程 cts 最小
原文地址:https://www.cnblogs.com/caizhen/p/9226627.html