- 相關(guān)推薦
常見(jiàn)算法面試題的解法
今天小編在應屆畢業(yè)生求職網(wǎng)上收集到一篇關(guān)于常見(jiàn)算法面試題的解法的文章,現在跟大家分享一下:
算法面試題中經(jīng)常出現的一種題目就是查找或者是排序. 個(gè)人感覺(jué)有80%的題目都和查找排序有關(guān)
大部分常用的排序算法時(shí)間復雜度都是O(nLogn)
這個(gè)只能說(shuō)是通用解,一般解
對于算法面試題中往往要求很低的時(shí)間復雜度,
例如下面這個(gè)題目
已知一個(gè)數組長(cháng)為m 中間存放的都是整數 其值范圍為1-m ,中間的元素有可能重復 也有可能不重復
如何在O(M)的情況下查到 (1-m)的數中 哪些數重復了,哪些數沒(méi)有出現
counting sort 的本質(zhì)是 新建一個(gè)長(cháng)度為M的數組An 每一個(gè)數組下標代表一個(gè)數 ,數組中的值代表這個(gè)元素出現的次數 (初始值都為0)
那么, 遍歷一次m 遇到一個(gè)數 就在對應的下標上加1
那么最終可以得到一個(gè)An 其中包含了所有元素的出現個(gè)數
將其展開(kāi) 就可以獲得排序完的數組
這是一種特殊的算法,只能解決特殊的問(wèn)題 但是他的時(shí)間復雜度是O(n)
如果在你遇到排序 或者查找之類(lèi)的算法題的時(shí)候,不如上去先試試counting sort
更多精彩的面試問(wèn)題分享,敬請參考:高效的面試問(wèn)題 八大經(jīng)典面試問(wèn)題的對應方法 五大奇怪的面試問(wèn)題
【常見(jiàn)算法面試題的解法】相關(guān)文章:
中考化學(xué)推斷題的常見(jiàn)類(lèi)型與解法06-22
護士常見(jiàn)的面試題推薦08-08
日企常見(jiàn)面試題分享08-08
醫生招聘常見(jiàn)面試題及答案07-10
面試心得:常見(jiàn)面試題型及對策07-31