浏览 2662 次
锁定老帖子 主题:排序之冒泡排序
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (14)
|
|
---|---|
作者 | 正文 |
发表时间:2009-12-21
最后修改:2009-12-21
冒泡排序
class Sort{ private long[] a; private int nElement; public Sort(long[] array){ this.a = array; } public static void main(String[] args) { long[] array = new long[]{5,3,1,7,9,2,0}; Sort b = new Sort(array); b.bubbleSort(); System.out.println(b); } public void bubbleSort(){ int out,in; int step = 0; System.out.println("bubble---"); for(out = a.length -1 ; out > 0; out --){ for(in = 0; in < out; in++){ if(a[in+1] < a[in]){ long temp = a[in]; a[in] = a[in+1]; a[in+1] = temp; step++; } } } System.out.println(step); } public String toString(){ StringBuilder b = new StringBuilder(); for(long l : a){ b.append(l); b.append(","); } return b.toString(); } }
例:
对数组 {5,3,1,7,9,2,0} 进行排序 a[0] > a[1] 内层每循环一次,指针都向后移动一位,当前后两个对象大小不符条件时,发生对换, 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2010-01-16
private int nElement;
这个是干啥的? 呵呵 |
|
返回顶楼 | |
发表时间:2010-03-17
呵呵 没啥用,前面测试时候忘删除了。
|
|
返回顶楼 | |