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);
    	}
    }
    
    
  • 相关阅读:
    Linux下JDK安装位置
    Oracle中的User与Schema
    MFC中不同窗口间的切换
    MFC 动态的画线 画当前的线是清除上一次画的线
    VC ADO连接ACCESS步骤及错误处理
    虚继承和虚函数继承
    虚拟机无法连接连接U盘
    未能找到类型或命名空间
    VS2008 重构 封装字段 出错 无法使用
    vs2010 Visual Studio 遇到了异常。这可能是由某个扩展导致的
  • 原文地址:https://www.cnblogs.com/wblade/p/1908775.html
Copyright © 2011-2022 走看看