算法导论学习笔记——第7章 快速排序
快速排序
1 QUICKSORT(A,p,r) 2 if p<r 3 then q←PARTITION(A,p,r) 4 QUICKSORT(A,p,q-1) 5 QUICKSORT(A,q+1,r) 6 7 PARTITION(A,p,r) 8 x←A[r] 9 i←p-1 10 for j←p to r-1 11 do if A[j]<=x 12 then i←i+1 13 exchange A[i]↔A[j] 14 exchange A[i+1]↔A[r] 15 return i+1
随机化快速排序,不再选择r为主元,而是随机选择一个主元,并放到r位置
1 RANDOMIZED-PARTITION(A,p,r) 2 i←RANDOM(p,r) 3 exchange A[r]↔A[i] 4 return PARTITION(A,p,r) 5 6 RANDOMIZED-QUICKSORT(A,p,r) 7 if p<r 8 then q←RANDOMIZED-PARTITION(A,p,q-1) 9 RANDOMIZED-QUICKSORT(A,p,q-1) 10 RANDOMIZED-QUICKSORT(A,q+1,r)
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。