快速排序

来源:互联网 发布:vb label标签 编辑:程序博客网 时间:2024/05/22 05:00



#include<iostream>#include<cstdio>#include<cstring>using namespace std;void quicksort(int num[],int l,int r) {    if(l<r) {        int ll=l,rr=r;        int x=num[ll];        while(ll<rr) {            while(ll<rr&&num[rr]>=x) {                rr--;            }            if(ll<rr) {                num[ll]=num[rr];                ll++;            }            while(ll<rr&&num[ll]<x) {                ll++;            }            if(ll<rr) {                num[rr]=num[ll];                rr--;            }        }        num[ll]=x;        quicksort(num,l,ll-1);        quicksort(num,ll+1,r);    }}int main() {    int s[10]= {4,2,7,0,4,5,7,3,2,1};    quicksort(s,0,9);    for(int i=0; i<10; i++) {        cout<<s[i]<<endl;    }    return 0;}

public class Sort {public static void quicksort(int num[],int l,int r) {if(l<r) {int i=l,j=r,x=num[l];while(i<j) {while(i<j&&num[j]>=x) {j--;}if(i<j) {num[i++]=num[j];}while(i<j&&num[i]<x) {i++;}if(i<j) {num[j--]=num[i];}num[i]=x;quicksort(num,l,i-1);quicksort(num,i+1,r);}}}public static void main(String args[]) {int[] num= {4,2,7,0,4,5,7,3,2,1};quicksort(num,0,9);for(int i=0;i<10;i++) {System.out.println(num[i]);}}}


原创粉丝点击