快速排序,总分
参考:《算法导论》第七章
在这里手写了原始版的快速排序,双指针乃种方法,下次再研究。
刚开始用双指针乃种方法研究了一天,结果也没研究出来,然后看书,柳暗花明。
java
private static void quickSort(List<Student>stus,int start,int end){
if(start<end){
int p=partition(stus,start,end);
quickSort(stus,start,p-1);
quickSort(stus,p+1,end);
}
}
private static int partition(List<Student>stus,int start,int end){
int pivot=stus.get(end).mark.sum;
int i=start-1;
for(int j=start;j<end;j++){
if(stus.get(j).mark.sum>=pivot){
i++;
swap(stus,i,j);
}
}
swap(stus,i+1,end);
return i+1;
}
。
2023年12月19日20:12:20(其他排序方法,每天再来写)