选择排序学习小结

前几天学习了选择排序,其实这个排序方法在上学期学C语言的时候就学过了,只是那时候没好好学习。结果就忘了,前几天才重拾回来。
选择排序的原理:设有n个数。
第1步:把n个数中最小(大)的那个数选出来,放在第一位。
第2步:把剩下的(n-1)个数中最小(大)的那个数选出来,放在第二位。
第3步:把剩下的(n-2)个数中最小(大)的那个数选出来,放在第三位。
…… ……
第(n-1)步:把剩下的2个数中最小(大)的那个数选出来,放在第n-1位。
第n步:把最后剩下的数放在最后一位。
结束。


java中用数组实现选择排序(升序)的代码:
[img]http://dl2.iteye.com/upload/attachment/0098/0849/4d539fdb-ed27-3849-bdf8-8bba535669de.jpg[/img]

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;
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值