給定一批查詢日誌,數量是n,有的查詢條件出現了 n/m 次。找出這些次數日誌
1: 採用hashmap 經行計數,,O(N) 的空間,O(n) 的時間排序
2: 進行排序,O(nlogn)hash
3: 快速排序,也能夠作到O(n)hashmap
4:咱們申請一個大小爲M的map,開始變量查詢日誌,若是:變量
遇到一個不在map中的查詢,則插入map,而且將值設置爲1,遇到一個在map中的查詢,則將map該查詢對應的值加1map
當map的查詢個數等於m時,則對map中全部查詢的值減一,查詢
例子:時間
查詢日誌:4 3 3 2 1 2 3 4 4 7 且m是5
當 4 3 3 落入map中的時候,map的形狀如:
3
4 3
當 2 1 2 3 落入map中的時候,map形狀如:
3
3 2
4 3 1 2
當 4 4 落入map的時候
3
4 3 2
4 3 1 2 7
此事map的大小=5,能夠消除一行
3
4 3 2
此時剩下三個查詢
基於數的,整個時間複雜度是o(n logm)