JAVA排序算法实现代码-快速(Quick Sort)排序
2008-11-19 15:41
746 查看
JAVA排序算法实现代码-冒泡(Bubble Sort)排序
/** * JAVA排序算法实现代码-冒泡(Bubble Sort)排序。 * * @author 老紫竹 JAVA世纪网(java2000.net) * */ public class Test { public static void main(String[] args) { int[] a = { 10, 32, 1, 9, 5, 7, 12, 0, 4, 3 }; System.out.print("排序前: "); for (int i = 0; i < a.length; i++) System.out.printf("%3s", a[i]); System.out.println(); Test test = new Test(); test.bubbleSort(a); System.out.print("排序后: "); for (int i = 0; i < a.length; i++) System.out.printf("%3s", a[i]); System.out.println(); } public void bubbleSort(int[] a) { int len = a.length; System.out.println("数组大小是:" + len); boolean change = false; int temp; int count = 0; for (int i = len; i > 1; i--) { for (int j = 0; j < i - 1; j++) { if (a[j + 1] < a[j]) { temp = a[j + 1]; a[j + 1] = a[j]; a[j] = temp; change = true; count++; } } if (change) { System.out.print("第" + count + "趟交换: "); for (int k = 0; k < len; k++) System.out.print(a[k] + " "); System.out.println(); } } } }/** * JAVA排序算法实现代码-冒泡(Bubble Sort)排序。 * * @author 老紫竹 JAVA世纪网(java2000.net) * */ public class Test { public static void main(String[] args) { int[] a = { 10, 32, 1, 9, 5, 7, 12, 0, 4, 3 }; System.out.print("排序前: "); for (int i = 0; i < a.length; i++) System.out.printf("%3s", a[i]); System.out.println(); Test test = new Test(); test.bubbleSort(a); System.out.print("排序后: "); for (int i = 0; i < a.length; i++) System.out.printf("%3s", a[i]); System.out.println(); } public void bubbleSort(int[] a) { int len = a.length; System.out.println("数组大小是:" + len); boolean change = false; int temp; int count = 0; for (int i = len; i > 1; i--) { for (int j = 0; j < i - 1; j++) { if (a[j + 1] < a[j]) { temp = a[j + 1]; a[j + 1] = a[j]; a[j] = temp; change = true; count++; } } if (change) { System.out.print("第" + count + "趟交换: "); for (int k = 0; k < len; k++) System.out.print(a[k] + " "); System.out.println(); } } } }
运行结果
排序前: 10 32 1 9 5 7 12 0 4 3
数组大小是:10
第8趟交换: 10 1 9 5 7 12 0 4 3 32
第15趟交换: 1 9 5 7 10 0 4 3 12 32
第20趟交换: 1 5 7 9 0 4 3 10 12 32
第23趟交换: 1 5 7 0 4 3 9 10 12 32
第26趟交换: 1 5 0 4 3 7 9 10 12 32
第29趟交换: 1 0 4 3 5 7 9 10 12 32
第31趟交换: 0 1 3 4 5 7 9 10 12 32
第31趟交换: 0 1 3 4 5 7 9 10 12 32
第31趟交换: 0 1 3 4 5 7 9 10 12 32
排序后: 0 1 3 4 5 7 9 10 12 32
相关文章推荐
- 001-简单的java代码实现几种排序算法(插入,快速,冒泡,选择)
- 排序算法复习(Java实现):插入,冒泡,选择,Shell,快速排序, 归并排序,堆排序,桶式排序,基数排序
- [排序算法]--快速排序的Java实现
- 经典排序算法(一)--冒泡排序、快速排序java实现
- 排序算法复习(Java实现): 插入,冒泡,选择,Shell,快速排序
- Java 快速排序 代码实现
- 排序算法之快速排序的思想以及Java实现
- 排序算法---(4)快速排序---Java实现
- 排序算法复习(Java实现)(一): 插入,冒泡,选择,快速排序
- 几种常用的排序算法的分析及java实现(希尔排序,堆排序,归并排序,快速排序,选择排序,插入排序,冒泡排序)
- 算法代码实现之快速排序,Java实现
- 排序算法--交换排序(冒泡排序、快速排序、随机快速排序)java实现
- Java 常用排序算法实现--快速排序、插入排序、选择、冒泡
- 排序算法【java实现】(三)快速排序
- 几种常用的排序算法的分析及java实现(希尔排序,堆排序,归并排序,快速排序,选择排序,插入排序,冒泡排序)
- Java 常用排序算法实现--快速排序、插入排序、选择、冒泡
- 选择,插入,希尔,快速,堆,归并排序六种排序方式的Java 实现和性能对比(付代码)
- 快速排序的递归和非递归实现 -----C++、JAVA代码实现
- 排序算法复习(Java实现)(一): 插入,冒泡,选择,Shell,快速排序
- 快速排序的原理及java代码实现