排序算法--冒泡排序
来源:互联网 发布:一级建造师 网络教育 编辑:程序博客网 时间:2024/06/07 02:52
冒泡排序原理:
按照我个人的理解,就是将数组中两个相邻的元素进行比较,然后把最大的数往后移。通过for循环将所有的相邻元素比较一遍,直到没有数在需要交换。就说明排序已经完成。这个算法的名字也是因为较小的元素会经由交换慢慢“浮”到数列的顶端。我们可以看下面的动态图,可以理解这个冒泡排序的原理:
核心代码:
for (int i = 0; i < arr.length - 1; i++) { for (int j = 0; j < arr.length - i - 1; j++) { if (arr[j] < arr[j + 1]) { int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } }
具体代码实现:
package test1;public class test2 { public static void main(String[] args) { int[] arr = {6,5,3,1,8,7,2,4}; for (int i = 0; i < arr.length - 1; i++) { for (int j = 0; j < arr.length - i - 1; j++) { if (arr[j] > arr[j + 1]) { int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } System.out.println("外层for循环第"+i+"次遍历"); for(int k:arr){ System.out.print(k+"---"); } System.out.println(); } }}
运行结果:
外层for循环第0次遍历5---3---1---6---7---2---4---8---外层for循环第1次遍历3---1---5---6---2---4---7---8---外层for循环第2次遍历1---3---5---2---4---6---7---8---外层for循环第3次遍历1---3---2---4---5---6---7---8---外层for循环第4次遍历1---2---3---4---5---6---7---8---外层for循环第5次遍历1---2---3---4---5---6---7---8---外层for循环第6次遍历1---2---3---4---5---6---7---8---
阅读全文
0 0
- 排序算法--冒泡排序
- 排序算法-冒泡排序
- 排序算法--冒泡排序
- 排序算法--冒泡排序
- 排序算法-冒泡排序
- 排序算法 冒泡排序
- 排序算法-- 冒泡排序
- 排序算法-冒泡排序
- 排序算法---冒泡排序
- 排序算法-冒泡排序
- 排序算法--冒泡排序
- 排序算法--冒泡排序
- 排序算法--冒泡排序
- 排序算法--冒泡排序
- 排序算法--冒泡排序
- 排序算法--冒泡排序
- 排序算法 冒泡排序
- 排序算法-冒泡排序
- HDU6183 cdq分治+线段树
- Codeforces186C
- 闲来蛋疼写个qq侧滑删除
- Android中使用putExtra()传递对象实例
- bzoj 1003 [ZJOI2006]物流运输(最短路spfa+dp)
- 排序算法--冒泡排序
- Spiral Matrix
- 170903 WarGames-Behemoth(0)
- 内存优化总结:ptmalloc、tcmalloc和jemalloc
- 解决float属性导致换行
- 等错误率EER
- Firefox 2015 最受国人欢迎的十大扩展
- MD5加密
- 今天做了一个小游戏 猜拳游戏 大家可以看看玩玩