前几天学习了选择排序,其实这个排序方法在上学期学C语言的时候就学过了,只是那时候没好好学习。结果就忘了,前几天才重拾回来。
选择排序的原理:设有n个数。
第1步:把n个数中最小(大)的那个数选出来,放在第一位。
第2步:把剩下的(n-1)个数中最小(大)的那个数选出来,放在第二位。
第3步:把剩下的(n-2)个数中最小(大)的那个数选出来,放在第三位。
…… ……
第(n-1)步:把剩下的2个数中最小(大)的那个数选出来,放在第n-1位。
第n步:把最后剩下的数放在最后一位。
结束。
java中用数组实现选择排序(升序)的代码:
for(int k=0;k<array.length;k++){
int min = k ; 初始化最小值,默认为下标为k的那个数
for(int j=k+1;j<array.length;j++){
从下标为k+1的数开始比较大小,比到最后一位
if(array[min]>array[j]){
min=j; 选择出最小值,记下下标
}
}
int temp = array[k];
array[k]=array[min]; 把最小值附给下标为k的那个元素
array[min]=temp;
}
选择排序学习小结
猜你喜欢
转载自564144128.iteye.com/blog/2079183
今日推荐
周排行