class Solution {
public:
/**
* @param A an integer array
* @return void
*/
void sortIntegers2(vector<int>& A) {
// Write your code here
/*
vector<int>temp(A.size(),0);
mergeSort(A,temp,0,A.size()-1);
*/
quickSort(A,0,A.size()-1);
}
void quickSort(vector<int>& A,int left,int right) {
if(left >= right) {
return;
}
int index = partion(A,left,right);
int temp = A[index];
A[index] = A[left];
A[left] = temp;
quickSort(A,left,index-1);
quickSort(A,index+1,right);
}
int partion(vector<int>& A,int left,int right) {
int pivot = A[left];
int i = left;
int j = right+1;
while(i < j ) {
while(A[--j]>pivot) {
}
while((i<j) && (A[++i]<pivot)) {
}
int temp = A[i];
A[i] = A[j];
A[j] = temp;
};
//返回i和j都可以,注意分析left+1 = right这种情况
return j;
}
}
快排
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 01 ▼ 似乎这几年少有人提起乐基儿这个名字,直到她突然公布婚讯,大家才突然发现。这位黎明的前期,曾经的天王嫂...