冒泡排序
来源:互联网 发布:JAVA中 异常类型 编辑:程序博客网 时间:2024/04/30 05:39
排序的过程中,前一个和后一个比较,前面大就放到后面去,然后索引更新到原后一个(也就是+1啦),原后一个与原后一个的后一个比较。。。
然后一趟排序下来,最大的就被放到数组最后面了,最大的定下来以后排序就不必带上她了(排序范围-1),反正他最大放最后
package sort;/* * 冒泡排序 * 两两比较,小的放前,大的放后,一趟排序后,最大的放到最后 */public class bubbleSort{ private int [] array = { 9 , 4 , 2 , 5 , 6 , 7 , 8 }; private int maxSize ; //数组长度 private boolean isSwap;//用来标记一趟排序中,是否交换过数据,没有交换过说明数组已经是有序的 public bubbleSort () { maxSize = array.length ; } public void sort () { //用来指定循环的范围 maxSize-1 代表最大数组下标 for ( int i = maxSize - 1 ; i > 0 ; i-- ) { isSwap = false ; //排序把小的放到前面,大的放后面,一趟下来,最大的放到最后了 for ( int j = 0 ; j < i ; j ++ ) { if ( array [j] > array [j+1] ) { swap ( j , j+1 ) ; isSwap = true ; } } //如果isSwap == false,代表没有交换,说明顺序提前排好了,直接退出 if ( !isSwap ) { break ; } } } //交换元素,形参放的是数组下标 public void swap ( int i , int j ) { int temp = array [i]; array [i] = array [j] ; array [j] = temp ; } //遍历 public void display () { for ( int i = 0 ; i < array.length ; ++i ) { System.out.print ( array[i] + " "); } System.out.println (); }}
阅读全文
0 0
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- 冒泡排序
- jsp指令相关
- 静态数组的顺序表
- 【bzoj 3110】K大数查询(整体二分)
- okhttp3 Cache回顾
- 大数据平台安全建设方案分享
- 冒泡排序
- json踩坑
- MySQL的版本命名规则
- 破解idea2017.3 亲测有效
- navicat连接不上mqsql怎么办
- ubuntu下查看服务器的CPU详细情况(分色排版)
- freeSSHD + PuTTY 公共密钥登录
- MongoDB 安全 checklist 及最优配置模板
- docker基础知识