待字閨中:日誌查詢。(網絡摘要)

給定一批查詢日誌,數量是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)

相關文章
相關標籤/搜索