java是什么 一道java面試題,20億數(shù)字的文本排序,如何取前100?
一道java面試題,20億數(shù)字的文本排序,如何取前100?因?yàn)檫@是一個(gè)Java問題,所以這是典型的TOPK問題。首先取前100個(gè)數(shù)字構(gòu)建一個(gè)最小堆,然后依次從堆的頂部插入剩余的數(shù)字,同時(shí)調(diào)整堆。堆中最
一道java面試題,20億數(shù)字的文本排序,如何取前100?
因?yàn)檫@是一個(gè)Java問題,所以這是典型的TOPK問題。首先取前100個(gè)數(shù)字構(gòu)建一個(gè)最小堆,然后依次從堆的頂部插入剩余的數(shù)字,同時(shí)調(diào)整堆。堆中最后100個(gè)元素就是結(jié)果??臻g復(fù)雜度是k,時(shí)間復(fù)雜度是nlogk
在Java中,數(shù)組的下標(biāo)表示數(shù)組中的元素,從0開始的值,0表示第一個(gè)元素,1表示第二個(gè)元素,依此類推。示例如下:int[]entry=New int[]1,2,4}//創(chuàng)建int類型的新數(shù)組系統(tǒng)輸出打?。╥nt[0])//其中0是數(shù)組的第一個(gè)值,即1,下標(biāo)是0