從1億個數裏面找出前100個最大的

從1億個數裏面找出前100個最大的 這個題目應該是一些大公司面試題中常常被問到的,這裏我給出一種作法,至於面試官滿不滿意我就不知道了。咱們知道,這種找出前多少個最大或者最小的最適合用堆排序(對堆排序不熟悉的讀者能夠參考爲的這篇博客:堆排序)。可是若是咱們用1億個數去建堆並調整,固然時間複雜度是不容許的。題目中要求前100個大的,那麼咱們就只用100個數建堆,並且是創建成最小堆。剩下的1億減100個
相關文章
相關標籤/搜索