package Quick;

public class quicksort {  

    static class QuickSort {  

        public int data[];  

        private int partition(int array[], int low, int high) {
            int key = array[low];
            while (low < high) {
                while (low < high && array[high] >= key)
                    high--;
                array[low] = array[high];
                while (low < high && array[low] <= key)
                    low++;
                array[high] = array[low];
            }
            array[low] = key;
            return low;
        }  

        public int[] sort(int low, int high) {
            if (low < high) {
                int result = partition(data, low, high);
                sort(low, result - 1);
                sort(result + 1, high);
            }
            return data;
        }
    }  

    static void print(int data[]) {
        for (int i = 0; i < data.length; i++) {
            System.out.print(data[i] + " ");
        }
    }  

    public static void main(String[] args) {
        int data[] = { 20, 3, 10, 9, 186, 99, 200, 96, 3000 };
        print(data);
        System.out.println();
        QuickSort qs = new QuickSort();
        qs.data = data;
        qs.sort(0, data.length - 1);
        print(data);
    }
}  

最新文章

  1. 批量导出oracle中的对象
  2. 关于Xcode7中添加不了libresolv.dylib等类似库的问题
  3. swift中第三方网络请求库Alamofire的安装与使用
  4. notepad++批量头尾追加
  5. 一张图说明该选用神马程式来serve你的django应用
  6. [转载] TCP协议缺陷不完全记录
  7. sql导出查询数据
  8. 火车票硬座座位位置分布图、火车座位分布图 andydao
  9. 用C/C++扩展你的PHP(转)
  10. XHTML学习笔记
  11. Mysql 基础语法1
  12. 开始工作----微信通过get检查当前网站---是否可用
  13. CI 数据库使用积累
  14. C语言第一次实验报告
  15. linux 指令备忘
  16. U-Boot Makefile分析(5)主控Makefile分析
  17. 【转】如何修改 video 样式
  18. [jzoj]1417.数学题
  19. Mongodb常用增删改查语法
  20. 【IOS】#import和#include有什么区别,@class呢,#import&lt;&gt;跟#import &quot;&quot;有什么区别?

热门文章

  1. 增加VMWare开机画面时间,来防止快速跳过而无法进入BIOS
  2. PHP 2:从一个实例介绍学习方法
  3. 快速构建Windows 8风格应用24-App Bar构建
  4. 快速构建Windows 8风格应用29-捕获图片与视频
  5. 用jQuery的ajax的功能实现输入自动提示的功能
  6. html5跨域数据传递(postMessage)
  7. Katana介绍以及使用
  8. Android项目---LayoutParams
  9. Reactive Extensions
  10. Js模块模式