-------------------------
呵呵 ,冒泡。多少年不曾遇见。
看代码没用,还是要理解什么是冒泡排序,也就是说算法,同样的还有选择法。。
--2015-1-27 21:20:54 看这么多人说我装B,那我就完善下
选择法:
第一次找最大/最小的数字和第一个位置的数字互换
第二次找次最大/最小的数字和第二个位置的数字互换
...以此类推
public static void main(String[] args) {
int nums[] = {5,12,7,17,4,1,6,7};
int temp;
for(int i=0;i<nums.length;i++){
int min = i; //认为当前最小
for(int j = i;j<nums.length;j++){
if(nums[min] > nums[j] ){ // 记录小数字的索引,遍历一边之后 min存放最小数字的索引
min = j;
}
}
if(i!=min){ // 如果索引发生改变 则互换数字
temp = nums[i];
nums[i] = nums[min];
nums[min] = temp;
}
}
for(int n:nums){
System.out.println(n);
}
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。