java多線程面試怎么說(shuō) 一道java面試題,20億數(shù)字的文本排序,如何取前100?
一道java面試題,20億數(shù)字的文本排序,如何取前100?因?yàn)檫@是一個(gè)Java問(wèn)題,所以這是典型的TOPK問(wèn)題。首先取前100個(gè)數(shù)字構(gòu)建一個(gè)最小堆,然后依次從堆的頂部插入剩余的數(shù)字,同時(shí)調(diào)整堆。堆中最
一道java面試題,20億數(shù)字的文本排序,如何取前100?
因?yàn)檫@是一個(gè)Java問(wèn)題,所以這是典型的TOPK問(wèn)題。首先取前100個(gè)數(shù)字構(gòu)建一個(gè)最小堆,然后依次從堆的頂部插入剩余的數(shù)字,同時(shí)調(diào)整堆。堆中最后100個(gè)元素就是結(jié)果??臻g復(fù)雜度是k,時(shí)間復(fù)雜度是nlogk
,還有面試問(wèn)答。著名企業(yè)的面試問(wèn)題很多。
同時(shí),每天都會(huì)在這里發(fā)表技術(shù)文章,不僅讓自己知道如何做面試題,也讓自己真正了解技術(shù)。在最后的一對(duì)一面試中也會(huì)有所幫助。下面的部分列出了一些文章,這些文章不像Java中的多線程問(wèn)題那樣常見(jiàn),但也是更難理解的部分。
現(xiàn)在您可以學(xué)習(xí)多線程。多線程的內(nèi)容有很多,其中有些還與底層有關(guān)?,F(xiàn)在你可以試著去理解。當(dāng)你有一點(diǎn)知識(shí)的時(shí)候,你可以試著尋找信息。你也可以先錄下來(lái),然后再理解。內(nèi)容很多。當(dāng)項(xiàng)目被應(yīng)用時(shí),你可能不知道從哪里開(kāi)始并且花費(fèi)更多的時(shí)間。
總之,學(xué)習(xí)還是循序漸進(jìn)的,一步一步的理解。