zoukankan      html  css  js  c++  java
  • quick sort 快速排序算法

    代码
    public class QuickSort {
    public static int[] QuickSort0(int[] pData, int left, int right) {
    int i= left, j= right;
    int middle, strTemp;

    middle
    = pData[(left + right) / 2];
    do {
    while ((pData[i] < middle) && (i < right))
    i
    ++;
    while ((pData[j] > middle) && (j > left))
    j
    --;
    if (i <= j) {
    strTemp
    = pData[i];
    pData[i]
    = pData[j];
    pData[j]
    = strTemp;
    i
    ++;
    j
    --;
    }
    }
    while (i <= j);
    for (int t = 0; t < pData.length; t++)
    System.out.print(pData[t]
    + " ");
    System.out.println(
    "");
    if (left < j) {
    QuickSort0(pData, left, j);
    }

    if (right > i)
    QuickSort0(pData, i, right);
    return pData;
    }

    public static void main(String[] argv) {
    int[] pData = { 1,84, 85, 67,600, 88,999 };
    QuickSort0(pData,
    0, pData.length - 1);
    }
    }

    public class QuickSort {
        public static int[] QuickSort0(int[] pData, int left, int right) {
            int i= left, j= right;
            int middle, strTemp;

            middle = pData[(left + right) / 2];
            do {
                while ((pData[i] < middle) && (i < right))
                    i++;
                while ((pData[j] > middle) && (j > left))
                    j--;
                if (i <= j) {
                    strTemp = pData[i];
                    pData[i] = pData[j];
                    pData[j] = strTemp;
                    i++;
                    j--;
                }
            } while (i <= j);
            for (int t = 0; t < pData.length; t++)
                System.out.print(pData[t] + " ");
            System.out.println("");
            if (left < j) {
                QuickSort0(pData, left, j);
            }

            if (right > i)
                QuickSort0(pData, i, right);
            return pData;
        }

        public static void main(String[] argv) {
            int[] pData = { 1,84, 85, 67,600, 88,999 };
            QuickSort0(pData, 0, pData.length - 1);
        }
    }
    public class QuickSort {
    	public static int[] QuickSort0(int[] pData, int left, int right) {
    		int i= left, j= right;
    		int middle, strTemp;
    
    		middle = pData[(left + right) / 2];
    		do {
    			while ((pData[i] < middle) && (i < right))
    				i++;
    			while ((pData[j] > middle) && (j > left))
    				j--;
    			if (i <= j) {
    				strTemp = pData[i];
    				pData[i] = pData[j];
    				pData[j] = strTemp;
    				i++;
    				j--;
    			}
    		} while (i <= j);
    		for (int t = 0; t < pData.length; t++)
    			System.out.print(pData[t] + " ");
    		System.out.println("");
    		if (left < j) {
    			QuickSort0(pData, left, j);
    		}
    
    		if (right > i)
    			QuickSort0(pData, i, right);
    		return pData;
    	}
    
    	public static void main(String[] argv) {
    		int[] pData = { 1,84, 85, 67,600, 88,999 };
    		QuickSort0(pData, 0, pData.length - 1);
    	}
    }
    
    
  • 相关阅读:
    POJ 1401 Factorial
    POJ 2407 Relatives(欧拉函数)
    POJ 1730 Perfect Pth Powers(唯一分解定理)
    POJ 2262 Goldbach's Conjecture(Eratosthenes筛法)
    POJ 2551 Ones
    POJ 1163 The Triangle
    POJ 3356 AGTC
    POJ 2192 Zipper
    POJ 1080 Human Gene Functions
    POJ 1159 Palindrome(最长公共子序列)
  • 原文地址:https://www.cnblogs.com/wblade/p/1908775.html
Copyright © 2011-2022 走看看