找出第K小的數

2021-08-06 07:39:32 字數 523 閱讀 7398

題目描述: 

查詢乙個陣列的第k小的數,注意同樣大小算一樣大。  

如  2 1 3 4 5 2 第三小數為3。 

輸入: 

輸入有多組資料。 

每組輸入n,然後輸入n個整數(1<=n<=1000),再輸入k。 

輸出: 

輸出第k小的整數。 

樣例輸入: 

6  2 1 3 5 2 2 

3  樣例輸出: 

3 **:

void swap(int* e1,int* e2);

int searchk(int arry,int n,int k);

void quicksort(int arry,int left,int right);

//找出第k小的數

void main()

quicksort(arry,left,l-1);

quicksort(arry,r+1,right);

}void swap(int* e1,int* e2)

找出第k大的數

問題 從乙個陣列裡面,找出第k大的數。題目很簡單,要想把第k個數找出來,其實也挺容易的。第一種方法 無非就是先排序,比如用merge sort演算法,整個演算法複雜度為 o nlgn 然後找到第k個即可。第二種方法 如果k很小,比如第五個最大的數,而整個陣列的長度非常的大,那麼,還有一種方法就是,我...

找出第k大的數

描述 使用者輸入n和k,然後接著輸入n個正整數 無序的 程式在不對n個整數排序的情況下,找出第k大的數。注意,第k大的數意味著從大到小排在第k位的數。輸入 n ka1 a2 a3 a4 an輸出 b輸入示例 5 232 3 12 5 89輸出示例 32提示 這是一道很經典的演算法問題,是公司面試的常...

第k小的數

輸入n個整數和乙個正整數k 1 k n 輸出這些整數從小到大排序後的第k個 思路1 最容易想到的方法 先對這個序列從小到大排序,然後輸出前面的最小的k個數即可。如果選擇快速排序法來進行排序,則時間複雜度 o n logn class solution 時間複雜度o nlogn 思路2 在思路1的基礎...