排序演算法總結(2.11)
kth元素(2.12)
幾種方法,關鍵:堆、快排
還不是很熟練
※2. 出現頻率最多的 k 個元素
桶排序,未作出
※3. 按照字元出現次數對字串排序
同上ok
4. 按顏色進行排序
ok215. kth largest element in an array (medium)
1. 採用庫函式,排序後選元素,時間複雜度o(nlogn),空間複雜度o(1)
int findkthlargest(vector& nums, int k)
2. 堆排序
class solution
nums[i]=tmp;
}int findkthlargest(vector& nums, int k)
return store.top();
}};4. 快排:時間複雜度o(n)
class solution
int partition(vector& nums,int left,int right)
};
347. top k frequent elements (medium)
1. 利用內建排序函式
class solution );
vectorres;
for(int i=0;i&a,pair&b)
vectorres(k);
for(int i=0;itopkfrequent(vector& nums, int k)
vectorres(k);
for(int i=bucket.size()-1;i>=0;i--){
for(int j=0;j451. sort characters by frequency (medium)
解法類似2
75. sort colors (medium)
leetcode刷題 2 排序(待更新)
參考五分鐘學演算法 穩定性 假定在待排序的記錄序列中,存在多個具有相同的關鍵字的記錄,若經過排序,這些記錄的相對次序保持不變,即在原序列中,r i r j 且r i 在r j 之前,而在排序後的序列中,r i 仍在r j 之前,則稱這種排序演算法是穩定的 否則稱為不穩定的。相等元素相對位置不變 45...
刷題1 排序1
學python有一段時間了,刷題試試。題 給定兩個字串 s 和 t 編寫乙個函式來判斷 t 是否是 s 的乙個字母異位詞。1.s anagram t nagaram 輸出true 2.s rat t car 輸出false 輸出true需要滿足的條件 1.字串的個數相等 2.元素一樣 故而我的想法是...
刷題(3) 排序(1)
注意 n指資料規模 k指 桶 的個數 in place指占用常數記憶體,不占用額外記憶體 out place指占用額外記憶體 冒泡,插入,歸併排序都是保證穩定性的,其他都不是 現代作業系統很少使用堆排序,因為它無法利用區域性性原理進行快取,也就是陣列元素很少和相鄰的元素進行比較和交換。快速排序是最快...