java十大算法 一道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é)果??臻g復雜度為k,時間復雜度為nlogk