快速排序简要算法
package math;import java.util.Arrays;import java.util.Collections;/** * 快速排序(简单实现) * User: zhangyong * Date: 13-6-16 * Time: 下午9:45 * To change this template use File | Settings | File Templates. */public class QuickSort { public static void sort(int[] arr, int low, int high) { int pivot; if (low < high) { pivot = partition(arr, low, high); sort(arr, low, pivot - 1); sort(arr, pivot + 1, high); } } public static int partition(int[] arr, int low, int high) { int pivotKey = arr[low]; while (low < high) { while (low < high && arr[high] >= pivotKey) { high--; } //将比枢纽记录小的记录交换到低端 swap(arr, low, high); while (low < high && arr[low] <= pivotKey) { low++; } swap(arr, low, high); } return low; } public static void swap(int[] arr, int low, int high) { int temp = arr[low]; arr[low] = arr[high]; arr[high] = temp; } public static void main(String[] args) { int[] arr = new int[]{ 5, 1, 2, 3, 10, 12 }; sort(arr, 0, 5); for(int i : arr){ System.out.print(i + " "); } }}