牛客網 高頻面試題 尋找第K大

2021-10-12 16:43:50 字數 891 閱讀 7393

尋找第k大_牛客網

有乙個整數陣列,請你根據快速排序的思路,找出陣列中第k大的數。

給定乙個整數陣列a,同時給定它的大小n和要找的k

(k在1到n之間),請返回第k大的數,保證答案存在。

示例1輸入[1

,3,5

,2,2

],5,

3返回值

2

和這篇部落格思路類似

牛客網 | 高頻面試題 | 最小的k個數_我是一塊小石頭-csdn部落格

k輪氣泡排序~即可

class

finder

; vector<

int> res;

int j=

0,i=0;

for(i=

0;i++i)}}

return input[j];}

};

主體思路就是利用快速排序每次能將比某個哨兵小的數放在左側,大的數放在右側

class

finder

intquickfind

(vector<

int>

& a,

int left,

int right,

int k)

a[i]

= mark;

//哨兵右側比他大的數字個數

int big_num = right - i;

//如果哨兵剛好是第k大的數

if(k - big_num -1==

0)return mark;

else

if(k - big_num -

1>0)

else}}

;

牛客網刷題 尋找第K大

有乙個整數陣列,請你根據快速排序的思路,找出陣列中第k大的數。給定乙個整數陣列a,同時給定它的大小n和要找的k k在1到n之間 請返回第k大的數,保證答案存在。輸入描述 輸入乙個陣列 陣列長度 k大 輸出描述 輸出k大座標 輸入 1,3,5,2,2 5,3 輸出 2本題與之前的最小的k個數思路相類似...

牛客網 高頻面試題 樹的直徑

樹的直徑 牛客網 題目描述 給定一棵樹,求出這棵樹的直徑,即樹上最遠兩點的距離。示例1的樹如下圖所示。其中4到5之間的路徑最長,是樹的直徑,距離為5 2 4 11 示例1輸入 複製6,0,1 1,5 1,2 2,3 2,4 3,4,2,1,5 返回值複製 11先遍歷樹,構建乙個無向圖 後序遍歷更新樹...

牛客網(面試題)

每年六一兒童節,牛客都會準備一些小禮物去看望孤兒院的小朋友,今年亦是如此。hf作為牛客的資深元老,自然也準備了一些小遊戲。其中,有個遊戲是這樣的 首先,讓小朋友們圍成乙個大圈。然後,他隨機指定乙個數m,讓編號為0的小朋友開始報數。每次喊到m 1的那個小朋友要出列唱首歌,然後可以在禮品箱中任意的挑選禮...