1. <tt id="5hhch"><source id="5hhch"></source></tt>
    1. <xmp id="5hhch"></xmp>

  2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

    <rp id="5hhch"></rp>
        <dfn id="5hhch"></dfn>

      1. 堆和堆排序在筆試題面試題中的應(yīng)用

        時間:2020-11-26 18:16:12 筆試經(jīng)驗 我要投稿

        堆和堆排序在筆試題面試題中的應(yīng)用

           堆和堆排序在筆試題面試題中的應(yīng)用;

        堆和堆排序在筆試題面試題中的應(yīng)用

              使用堆解決可以解決下列幾個問題,它們在筆試面試題中可以稱為經(jīng)典和燙手的:

          1. 構(gòu)建哈夫曼代碼怎樣提升性能?

          我們知道在構(gòu)建哈夫曼樹時,每次要選擇集合中兩個最小的元素,然后將元素值相加,合并為一個新節(jié)點,此時兩個最小的元素的.取出可以用HeapExtractMin函數(shù)來實現(xiàn),產(chǎn)出的新節(jié)點需要插入到堆中 我們有MinHeapInsert函數(shù)來實現(xiàn)。

          之前我們遇到哈夫曼編碼,往往關(guān)注的是其思想,然而每次取出最小的2個元素的過程,卻涉及到排序、求極值的問題。這時候用堆來維護這個隊列,每次還能將取出的兩個最小值的和插到堆里,非常方便,減少了運行時間。

          2. 計算大型浮點數(shù)集合的和

          有一個很普遍的情況,我們知道浮點數(shù)的存儲都有精度,遇到大浮點數(shù)和小浮點數(shù)相加,很可能會造成精度誤差。所以可以每次從優(yōu)先級隊列中取出最小的兩個數(shù)相加,和1的實現(xiàn)差不多。

          3. 在具有10億個數(shù)值的集合中找到100萬個最大的數(shù)

          這個就是TOP(K)問題了,可以建立100萬個元素的最小二叉堆,后面的數(shù)和根部進行比較,如果大于根部,進行堆調(diào)整

          4. 將多個小型有序文件合并到一個大型有序文件中

          該問題我整理成了另一篇文章。里面附有源碼測試;

          假設(shè)有 n個 小型有序文件,建立一個大小為n的最小堆,每個有序文件貢獻一個(如果有的話),每次取出最小值插入到大型文件中,并且去掉該最小元素,并將它在文件中的后續(xù)元素插入到堆中,能夠在o(lgn)的時間內(nèi)從n個文件中選擇要插入到大型文件中的元素。

          意思就是,維護一個堆,該堆存放了所有小文件的最小值。每次取出最小值min(屬于小文件A),將小文件A的下一個最小值再插入到A。持續(xù)下去,問題解決。

        其他的相關(guān)筆試經(jīng)驗:

        農(nóng)村商業(yè)銀行筆試分享    女大學(xué)生應(yīng)聘銀行心得    經(jīng)驗客服筆試題讓你思維靈活

        【堆和堆排序在筆試題面試題中的應(yīng)用】相關(guān)文章:

        關(guān)于php堆排序?qū)崿F(xiàn)原理與應(yīng)用方法11-19

        邏輯學(xué)知識在政治判斷題中的應(yīng)用論文12-06

        世界500強企業(yè)英語面試題中英文12-11

        淺談經(jīng)濟問題中的數(shù)學(xué)建模應(yīng)用10-12

        淺談土工合成材料在新建堆石壩及病險庫加固中的應(yīng)用10-27

        關(guān)于Java堆、棧和常量池的介紹10-05

        360筆試題目07-11

        華為2017筆試題08-16

        關(guān)于理賠專員面試技巧和試題12-18

        分享在步步高vivo2018校招筆的面試經(jīng)驗01-18

        国产高潮无套免费视频_久久九九兔免费精品6_99精品热6080YY久久_国产91久久久久久无码

        1. <tt id="5hhch"><source id="5hhch"></source></tt>
          1. <xmp id="5hhch"></xmp>

        2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

          <rp id="5hhch"></rp>
              <dfn id="5hhch"></dfn>