快速排序算法 java语言描述
2013-07-11 00:21
232 查看
package test; import java.util.Random; public class Test1 { static int num = 0; ////////////////////////////////////////////////////////// // 快速排序算法 public void quickSort(int[] a, int head, int tail) { if (head < tail) { int low = head; int height = tail; int temp = a[low]; while (low < height) { while (low < height && a[height] >= temp) { --height; } a[low] = a[height]; while (low < height && a[low] <= temp) { ++low; } a[height] = a[low]; } a[height] = temp; quickSort(a,head,low-1); quickSort(a,low+1,tail); num++; } } ////////////////////////////////////////////////////////// public static void main(String[] args) { int[] a = new int[20]; for (int i = 0; i < 20; i++) { a[i] = (int) (Math.random()*100); } for (int i:a) { System.out.print(i+" "); } System.out.println(); new Test1().quickSort(a, 0, a.length-1); for (int i:a) { System.out.print(i+" "); } System.out.println("\n"+new Test1().num); } }
相关文章推荐
- 队列的链式存储方式的实现(Java语言描述)
- 【数据结构】之队列(Java语言描述)
- 【数据结构】之散列链表(Java语言描述)
- 数据结构(java语言描述)哈夫曼编码
- 设计模式之桥接模式(Java语言描述)
- (数据结构与算法分析 五)------二叉查找树的实现( Java语言描述)
- 冒泡排序法的Java语言描述
- 读书笔记:数据结构与算法分析(java语言描述)——引论
- 希尔排序(Java语言描述)
- KMP算法的实现(Java语言描述)
- 数据结构(java语言描述)链栈的定义
- java语言描述Redis分布式锁的正确实现方式
- 数据结构(java语言描述)树(二叉树)的构建和遍历操作
- 行逻辑链接的顺序表实现稀疏矩阵的相乘(Java语言描述)
- 三元组顺序结构实现稀疏矩阵相加,行序优先(Java语言描述)
- 数据结构教程(java语言描述)徐孝凯主编----复习摘要04
- Java语言描述:回溯法之最优装载问题
- 链表的Java语言描述
- Java描述语言、国家和地理的类——Locale
- Java语言描述:动态规划法之编辑距离问题