zoukankan      html  css  js  c++  java
  • Interview Sort Function

    QuickSort

    Java Code:

     1 import java.util.*;
     2 public class quickSort{
     3     public static void main(String [] args){
     4         int [] arr = new int[]{4,2,7,5,0,9,1};
     5         int low = 0;
     6         int high = arr.length-1;
     7         quickSort(arr, low, high);
     8         System.out.println(Arrays.toString(arr));
     9     }
    10 
    11     private static void quickSort(int [] arr, int low, int high){
    12         if(arr == null || arr.length == 0){
    13             return;
    14         }
    15 
    16         if(low >= high){
    17             return;
    18         }
    19 
    20         int pivot = arr[low + (high - low)/2];
    21 
    22         //make left < pivot, right > pivot
    23         int i = low;
    24         int j = high;
    25         while(i <= j){
    26             while(arr[i] < pivot){
    27                 i++;
    28             }
    29             while(arr[j] > pivot){
    30                 j--;
    31             }
    32 
    33             if(i <= j){
    34                 int temp = arr[i];
    35                 arr[i] = arr[j];
    36                 arr[j] = temp;
    37                 i++;
    38                 j--;
    39             }
    40         }
    41 
    42         //recursively sort two sub arrays
    43         quickSort(arr, low, j);
    44         quickSort(arr, i, high);
    45     }
    46 }
  • 相关阅读:
    Linux(centos)下安装JDK
    springmvc的面试知识点总结
    建造者模式
    PHP原型模式
    PHP适配器模式
    php备忘录模式
    PHP代理模式proxy
    单例模式
    工厂模式
    结构模式
  • 原文地址:https://www.cnblogs.com/Dylan-Java-NYC/p/5040782.html
Copyright © 2011-2022 走看看