您的位置:首页 > 其它

八大排序之选择排序

2016-05-12 18:59 211 查看


概述

  选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是把0索引的元素,和索引1以后的元素都进行比较,第一次完毕,最小值出现在了0索引。同理,其他的元素就可以排好。


实现步骤

设定最小值的索引为0;一个布尔类型的开关;

把0索引的元素,和索引1以后的元素都进行比较

找出最小值,如果不是本身,此时isChange为true,就与之交换。这步做完后,最前的元素会是最小的数。

针对所有的元素重复以上的步骤,除了最后一个。

int minIndex = 0;
boolean isChange =false;
for (int i = 0; i < a.length; i++) {
for (int j = i + 1; j < a.length; j++) {
if(a[j]<a[minIndex]){
minIndex = j;
isChange = true;
}
}
if(isChange){
a[i] =a[i] ^ a[minIndex];
a[minIndex] =a[minIndex] ^ a[i] ;
a[i] =a[i] ^ a[minIndex];
}
if (i<= a.length - 2) {
minIndex = i +1;
}
isChange = false;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: