少年阿賓

          那些青春的歲月

            BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
            500 Posts :: 0 Stories :: 135 Comments :: 0 Trackbacks

          package com.abin.lee.sort;

          public class QuickSort {
           public static void quick(int[] number) {
            sort(number, 0, number.length - 1);
           }

           private static void sort(int[] number, int left, int right) {
            if (left < right) {
             int i = left;
             int j = right + 1;
             while (true) {
              // 向右找
              while (i + 1 < number.length && number[++i] < number[left]);
              // 向左找
              while (j - 1 > -1 && number[--j] > number[left]);
              if (i >= j)
               break;
              swap(number, i, j);
             }
             swap(number, left, j);
             sort(number, left, j - 1);
             // 對(duì)左邊進(jìn)行遞迴
             sort(number, j + 1, right);
             // 對(duì)右邊進(jìn)行遞迴
            }
           }

           private static void swap(int[] number, int i, int j) {
            int t = number[i];
            number[i] = number[j];
            number[j] = t;
           }
           public static void main(String[] args) {
            int[] num=new int[]{1,8,4,2,7,5,6,3};
            quick(num);
            for(int i=0;i<num.length;i++){
             System.out.println(num[i]);
            }
           }
          }

          posted on 2012-04-15 15:57 abin 閱讀(682) 評(píng)論(0)  編輯  收藏 所屬分類: Java常用算法

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 乌什县| 巩留县| 新源县| 安国市| 申扎县| 新乡县| 汶川县| 本溪| 永安市| 章丘市| 南川市| 兴业县| 全州县| 洛南县| 苍溪县| 通江县| 聊城市| 渝北区| 肇州县| 宽城| 翁源县| 邵阳市| 淮南市| 武山县| 新宁县| 南宫市| 华坪县| 沛县| 涪陵区| 称多县| 南澳县| 承德县| 广昌县| 清苑县| 分宜县| 岳阳市| 兴安县| 大英县| 南岸区| 平南县| 大埔县|