zoukankan      html  css  js  c++  java
  • quickSort

     1 package POJ;
     2 
     3 public class Main {
     4 
     5     /**
     6      * 
     7      * QuickSort
     8      * 
     9      */
    10     public static void main(String[] args) {
    11         Main so = new Main();
    12         int[] list = { 6, 4, 2, 3, 1, 5, 10, 4, 9, 8, 11, 7 };    
    13         int[] result=so.quickSort(list, 0, 11);
    14         for(int i:result)
    15             System.out.println(i);
    16     }    
    17     public int[] quickSort(int[] list,int left,int right){
    18         int index=partition(list,left,right);
    19         if(left<index-1){
    20             quickSort(list, left, index-1);
    21         }
    22         if(index<right){
    23             quickSort(list, index, right);
    24         }
    25         return list;
    26     }
    27     private int partition(int[] list, int left, int right) {
    28         // TODO Auto-generated method stub
    29         int pivot=list[(left+right)/2];
    30         while(left<=right){
    31             while(list[left]<pivot)
    32                 left++;
    33             while(list[right]>pivot)
    34                 right--;
    35             if(left<=right){
    36                 swap(list,left,right);
    37                 left++;
    38                 right--;
    39             }
    40         }
    41         return left;
    42     }
    43     private void swap(int[] list, int left, int right) {
    44         // TODO Auto-generated method stub
    45         int temp=list[left];
    46         list[left]=list[right];
    47         list[right]=temp;
    48     }
    49 }
  • 相关阅读:
    Codeforces Round #319 (Div. 2) D
    因为网络请求是 异步的,
    ios真蛋疼,
    单例模式的两种实现,
    jump, jump,
    一点 误删,
    关于代理,
    button上的两个手势,
    数据,
    header 的蓝色,
  • 原文地址:https://www.cnblogs.com/Phoebe815/p/3921885.html
Copyright © 2011-2022 走看看