码迷,mamicode.com
首页 > 其他好文 > 详细

快速排序

时间:2014-10-02 16:23:03      阅读:261      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   io   os   ar   java   for   sp   

java实现

package sort;

public class QuickSort {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        
        int []a={16,7,3,20,17,8};
        
        for(int i=0; i<a.length; i++)
            System.out.print(a[i]+" ");
        
        quickSort(a);
        System.out.println();
        
        for(int i=0; i<a.length; i++)
            System.out.print(a[i]+" ");
    }
    
    public static void quickSort(int a[])
    {
        quickSort(a,0,a.length-1);
    }
    
    public static void quickSort(int a[],int l,int r){
        int i=l,j=r;
        int x=a[i];
        
        while(i<j)
        {
            while(i<j && x<=a[j])
                j--;
            if(i<j)
                a[i]=a[j];
            
            while(i<j && x>a[i])
                i++;
            if(i<j)
                a[j]=a[i];
        }
        
        if(l<i-1)
            quickSort(a,l,i-1);
        if(i+1<r)
            quickSort(a,i+1,r);
        
        a[i]=x;
    }

}

c++实现

#include<iostream>
using namespace std;

void quickSort(int a[],int len);
void quickSort(int a[],int l,int r);

int main()
{
    int a[]={70,80,31,37,10,1,48,60,33,80};
    int len=sizeof(a)/sizeof(int);

    quickSort(a,len);

    for(int i=0; i<len; i++)
        cout<<a[i]<<" ";
}

void quickSort(int a[],int len)
{
    quickSort(a,0,len-1);
}

void quickSort(int a[],int l,int r)
{
    int i=l,j=r;
    int x=a[i];

    while(i<j)
    {
        while(i<j && x<=a[j])
            j--;
        if(i<j)
            a[i]=a[j];

        while(i<j && x>a[i])
            i++;
        if(i<j)
            a[j]=a[i];
    }

    if(l<i-1)
        quickSort(a,l,i-1);
    if(i+1<r)
        quickSort(a,i+1,r);

    a[i]=x;
}

 

快速排序

标签:style   blog   color   io   os   ar   java   for   sp   

原文地址:http://www.cnblogs.com/huangcongcong/p/4004122.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!