關於k分位數 收藏
題目:對乙個含有n個元素的集合來說,所謂的k分位數,就是能把已排序的集合分成k個大小相等的集合的「k-1個順序統計量」。請給出乙個能求出含有n個元素(無序)的集合的k分位數的o(nlgk)時間的演算法。
分析:k_select(a[n],k)
if(k == 0)
return ;
m = bit_select(a[n],2);//尋找中位數,m為中位數,時間複雜度為o(n)
將a[n]根據m劃分為兩塊,m作為中間位置存在,左邊的比它小,右邊的比它大,o(n)
m1 = k_select(a[1,m-1],k/2);
m2 = k_select(a[m+1,……n],k/2);
}
移掉K位數字
給定乙個以字串表示的非負整數 num,移除這個數中的 k 位數字,使得剩下的數字最小。輸入 num 1432219 k 3 輸出 1219 解釋 移除掉三個數字 4,3,和 2 形成乙個新的最小的數字 1219。輸入 num 10200 k 1 輸出 200 解釋 移掉首位的 1 剩下的數字為 20...
移掉K位數字
移掉k位數字 給定乙個以字串表示的非負整數 num,移除這個數中的 k 位數字,使得剩下的數字最小。注意 示例 1 輸入 num 1432219 k 3 輸出 1219 解釋 移除掉三個數字 4,3,和 2 形成乙個新的最小的數字 1219。示例 2 輸入 num 10200 k 1 輸出 200 ...
移掉k位數字
給定乙個以字串表示的非負整數 num,移除這個數中的 k 位數字,使得剩下的數字最小。注意 num 的長度小於 10002 且 k。num 不會包含任何前導零。示例 1 輸入 num 1432219 k 3 輸出 1219 解釋 移除掉三個數字 4,3,和 2 形成乙個新的最小的數字 1219。示例...