下面的代碼是哪個(gè)算法的C++源碼?()
//用某個(gè)簡(jiǎn)單排序算法對(duì)數(shù)組a[p:r]排序;
}
return a[p+k-1];
};
for(inti=0;i< =(r-p-4)/5;i++){
//將a[p+5*i]至a[p+5*i+4]的第3小元素與a[p+i交換位置;}
Type x=Select(a,p,p+(r-p-4)/5,(r-p-4)/10);//找中位數(shù)的中位數(shù)
inti=Partition(a,p,r,x),j=i-p+1;
if(k< =j)return Select(a,p,,k);
else return Select(a,i+1,r,k-j);}
A.全排列問(wèn)題
B.線性時(shí)間選擇
C.快速排序
D.合并排序
您可能感興趣的試卷
你可能感興趣的試題
A.O(1)
B.O(logn)
C.O(n logn)
D.O(n)
A.動(dòng)態(tài)規(guī)劃
B.分治
C.回溯
D.貪心
T(n)
n=1
T(n)=
kT(n/m)+f(n)n>1
上述遞歸表達(dá)式最可能用于()算法。
A.動(dòng)態(tài)規(guī)劃
B.分治
C.回溯
D.貪心
A.O(n)
B.O(logn)
C.O(n logn)
D.O(n!)
A.O(logn)
B.O(n logn)
C.O(n)
D.Q(1)
最新試題
用m種顏色給n個(gè)頂點(diǎn)著色、且使一條邊的兩個(gè)頂點(diǎn)顏色不同,則對(duì)應(yīng)的解空間樹是一棵()。
用漸進(jìn)表示法分析算法復(fù)雜度的增長(zhǎng)趨勢(shì)。
?在分治法中講到快速排序,如果每次使用partion函數(shù)導(dǎo)致分組出現(xiàn)嚴(yán)重不平衡情況下,算法效率不高,最壞情況下的時(shí)間復(fù)雜度為O(n2),通過(guò)改造partition函數(shù),也就是每次隨機(jī)選擇一個(gè)元素作為劃分基準(zhǔn),這樣會(huì)很好地改善算法的性能,這種算法思想是()。
使用窮舉法求解最長(zhǎng)遞增子序列的時(shí)間復(fù)雜度為()。
在求解部分背包問(wèn)題時(shí)采用的貪心策略是()。
下列關(guān)于效率的說(shuō)法正確的是()。
關(guān)于使用回溯法求解0-1背包問(wèn)題,以下說(shuō)法正確的是()。
分支限界法中,擴(kuò)展出的孩子結(jié)點(diǎn)在入隊(duì)時(shí),存儲(chǔ)該孩子結(jié)點(diǎn)的父結(jié)點(diǎn)的地址和左孩子標(biāo)志。其目的是什么?()
在解決活動(dòng)安排問(wèn)題時(shí)應(yīng)首先對(duì)活動(dòng)進(jìn)行排序,排序的依據(jù)是()。
已知某樓房共20層,如果采用二分查找,最多猜()次就能猜出任意一個(gè)樓層。