java 快速排序
2012-11-28 23:33
169 查看
public class QuickSort { /** * 快速排序 * * @param strDate * @param left * @param right */ public void quickSort(String[] strDate, int left, int right) { String middle, tempDate; int i, j; i = left; j = right; middle = strDate[(i + j) / 2]; do { while (strDate[i].compareTo(middle) < 0 && i < right) i++; // 找出左边比中间值大的数 while (strDate[j].compareTo(middle) > 0 && j > left) j--; // 找出右边比中间值小的数 if (i <= j) { // 将左边大的数和右边小的数进行替换 tempDate = strDate[i]; strDate[i] = strDate[j]; strDate[j] = tempDate; i++; j--; } } while (i <= j); // 当两者交错时停止 if (i < right) { quickSort(strDate, i, right);// 从 } if (j > left) { quickSort(strDate, left, j); } } /** * @param args */ public static void main(String[] args) { String[] strVoid = new String[] { "11", "66", "22", "0", "55", "22", "10", "32" }; QuickSort sort = new QuickSort(); sort.quickSort(strVoid, 0, strVoid.length - 1); for (int i = 0; i < strVoid.length; i++) { System.out.println(strVoid[i] + " "); } } }
相关文章推荐
- 快速排序Java实现
- quicksort 快速排序 java
- Java实现冒泡排序、快速排序、选择排序、插入排序和归并排序
- 快速排序--Java实现
- 快速排序java实现
- 快速排序的java版本
- Java快速排序
- 快速排序 (java)
- 快速排序的递归非递归实习java
- JAVA将快速将列表分组并排序键
- JAVA 数组的排序方法冒泡、选择、快速、数组递增
- java实现快速排序
- java快速排序
- [java]排序分类--及选择排序、插入排序、冒泡排序、快速排序的解释图和代码
- java快速排序优化
- 快速排序java实现
- Java排序之【快速排序】
- 快速排序的Java实现(二路快排)
- [java] 快速排序
- Java 快速排序