java實現(xiàn)excel的數(shù)據(jù)導入 一道java面試題,20億數(shù)字的文本排序,如何取前100?
一道java面試題,20億數(shù)字的文本排序,如何取前100?既然是java題,這就是經(jīng)典的topk問題。先取前100個數(shù),建立一個最小堆,剩下的數(shù)依次從堆頂插入元素,同時調(diào)整堆。最后堆中的100個元素即
一道java面試題,20億數(shù)字的文本排序,如何取前100?
既然是java題,這就是經(jīng)典的topk問題。先取前100個數(shù),建立一個最小堆,剩下的數(shù)依次從堆頂插入元素,同時調(diào)整堆。最后堆中的100個元素即為結(jié)果。空間復(fù)雜度為k,時間復(fù)雜度為nlogk
java中需要排序的數(shù)據(jù),為什么都是用hashmap,而不是直接用sortmap?
應(yīng)用場景不同
【TreeMap繼承自SortedMap】它用來保持鍵的有序順序,也包含了很多排序的方法。
【HashMap】 是無序的,由Collections的sort方法進行排序。