码迷,mamicode.com
首页 > 编程语言 > 详细

选择排序

时间:2018-06-26 01:06:33      阅读:169      评论:0      收藏:0      [点我收藏+]

标签:--   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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!