快速排序java三種實(shí)現(xiàn) 大一軟件工程學(xué)生,看完了譚浩強(qiáng)的書,越看越迷茫,感覺并沒什么用,什么大程序都不會(huì)編,求指點(diǎn)?
大一軟件工程學(xué)生,看完了譚浩強(qiáng)的書,越看越迷茫,感覺并沒什么用,什么大程序都不會(huì)編,求指點(diǎn)?讀他的書時(shí)感到頭暈是很正常的,因?yàn)榇蠖鄶?shù)中國(guó)教授都不在乎你能不能聽懂。他們關(guān)心的是教科書是否更“學(xué)術(shù)化”。如
大一軟件工程學(xué)生,看完了譚浩強(qiáng)的書,越看越迷茫,感覺并沒什么用,什么大程序都不會(huì)編,求指點(diǎn)?
讀他的書時(shí)感到頭暈是很正常的,因?yàn)榇蠖鄶?shù)中國(guó)教授都不在乎你能不能聽懂。他們關(guān)心的是教科書是否更“學(xué)術(shù)化”。如果公式中沒有希臘字母,他們就不好意思跟別人打招呼。當(dāng)你介紹計(jì)算機(jī)語(yǔ)言時(shí),你能很快了解教授的水平如何顯示嗎?可憐的上帝,我看到了發(fā)明C語(yǔ)言的上帝。讀他的書,我懷疑他是否會(huì)說C語(yǔ)言。。。在網(wǎng)上閱讀Arduino的教程,把軟硬件結(jié)合起來(lái)學(xué)習(xí),先了解基本的硬件,再了解軟件是如何控制硬件的,這樣才能真正學(xué)會(huì)理解C語(yǔ)言。。。
一道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