第九屆藍橋杯省賽C B組第五題

2021-08-30 02:39:22 字數 830 閱讀 1532

以下**可以從陣列a中找出第k小的元素。

它使用了類似快速排序中的分治演算法,期望時間複雜度是o(n)的。

請仔細閱讀分析原始碼,填寫劃線部分缺失的內容。

#include 

int quick_select

(int a[

], int l, int r, int k)

int i = l, j = r;

while

(i < j)

while

(i < j && a[j]

> x) j--;if

(i < j)

} a[i]

= x;

p = i;

if(i - l +

1== k)

return a[i];if

(i - l +

1< k)

return

quick_select

( _____________________________ )

;//填空

else

return

quick_select

(a, l, i -

1, k);}

int main()

;printf

("%d\n"

,quick_select

(a,0,14

,5))

;return0;

}

答案:a,i+

1,r,k-i+l-

1不過在個人理解來看,a,l,r,k也可以,不過複雜度高。

第九屆藍橋杯省賽 第五題 快速排序

以下 可以從陣列a中找出第k小的元素。它使用了類似快速排序中的分治演算法,期望時間複雜度是o n 的。請仔細閱讀分析原始碼,填寫劃線部分缺失的內容。注意 只填寫劃線部分缺少的 不要抄寫已經存在的 或符號。include includeint quick select int a,int l,int ...

第九屆藍橋杯初賽C B組第五題 快速排序

以下 可以從陣列a中找出第k小的元素。它使用了類似快速排序中的分治演算法,期望時間複雜度是o n 的。請仔細閱讀分析原始碼,填寫劃線部分缺失的內容。答案 a,i 1,r,k i l 1 include int quick select int a,int l,int r,int k int i l,...

第九屆藍橋杯省賽C B組 螺旋折線

如圖p1.png所示的螺旋折線經過平面上所有整點恰好一次。對於整點 x,y 我們定義它到原點的距離dis x,y 是從原點到 x,y 的螺旋折線段的長度。例如dis 0,1 3,dis 2,1 9 給出整點座標 x,y 你能計算出dis x,y 嗎?輸入格式 x和y 對於40 的資料,1000 x,...