設計一個數據結構,包括兩個函數,插入數據和獲得中位數。
利用大根堆和小根堆,其中大根堆維護較小的一半數據,小根堆維護較大的一半數據。
然後根據相應的情況,對兩個堆做相應的堆化操作,以滿足兩個堆中元素數目一致。時間複雜度O(lgn)
extension:
設計一個堆棧,除了常見的堆棧操作,還有一個返回中位數的操作。
同樣利用大根堆和小根堆,來維護中位數。時間複雜度O(lgn)
設計一個數據結構,包括兩個函數,插入數據和獲得中位數。
利用大根堆和小根堆,其中大根堆維護較小的一半數據,小根堆維護較大的一半數據。
然後根據相應的情況,對兩個堆做相應的堆化操作,以滿足兩個堆中元素數目一致。時間複雜度O(lgn)
extension:
設計一個堆棧,除了常見的堆棧操作,還有一個返回中位數的操作。
同樣利用大根堆和小根堆,來維護中位數。時間複雜度O(lgn)
一、Trie的介紹: 1、主要應用場景:搜索引擎的自動補全功能:Trie樹+詞頻(概率)權重因子 IP路由:最長前綴匹配,Trie路由算法