O(n^2)排序算法1——冒泡排序,改进冒泡排序,java实现
来源:互联网 发布:caffe教程 编辑:程序博客网 时间:2024/06/02 01:22
public class BubbleSort<T extends Comparable<? super T>> { public void sort(T[] arr) { for (int i = arr.length - 1; i > 0; i--) { for (int j = 0; j < i; j++) { if (arr[j].compareTo(arr[j + 1]) > 0) { T temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } }}
//改进后的冒泡排序public class BubbleSortAdvance<T extends Comparable<? super T>> {/** * 用n记录了最后一次交换的位置 * 减少了n到i间的重复比较 */public void sort(T[] arr) {int n = arr.length;boolean swaped = false;for (int i = n - 1; i > 0; i--) {for (int j = 0; j < i; j++) {if (arr[j].compareTo(arr[j + 1]) > 0) {T temp = arr[j];arr[j] = arr[j + 1];arr[j + 1] = temp;n = j + 1;//+1是因为外层循环每次要i--swaped = true;}}i = swaped ? n : i;swaped = false;}}}
1 0
- O(n^2)排序算法1——冒泡排序,改进冒泡排序,java实现
- 排序算法——java实现(1):冒泡排序算法
- 冒泡排序 O(n^2)
- O(n)冒泡排序
- 冒泡排序改进算法
- 排序算法1-冒泡排序及改进
- 【常用排序算法】冒泡排序与冒泡排序优化改进(Java实现)
- Java排序算法--之冒泡算法改进
- 冒泡排序改进-1
- Java排序算法——冒泡排序
- Java排序算法——冒泡排序
- 排序算法(一)——冒泡排序及改进
- 排序算法(一)——冒泡排序及改进
- 排序算法(一)——冒泡排序及改进
- 排序算法—冒泡排序
- 冒泡排序—java实现
- 【排序】时间复杂度为O(N^2)的排序——冒泡、选择和插入排序
- 选择排序、插入排序、冒泡排序【O(n^2)】
- TCP三次握手和四次挥手的理解
- 把排序数组转换为高度最小的二叉搜索树
- SQLite实现数据持久化存储 购买商品
- SQLite数据库
- 插入排序:2路插入排序原理分析及源码演示
- O(n^2)排序算法1——冒泡排序,改进冒泡排序,java实现
- 获取完数
- 三十三、SpringBoot配置属性之MVC
- 用VS2008编写汇编程序
- 一个整数反转的最短代码
- MATLAB读取数据库中的数据
- Android SQLite实现数据持久化存储购买商品小案例
- Cookie/Session机制详解
- 实习篇