利用二元樹這個數據結構,或者說工具, 我們就能講解一個經典的計算機算法,叫做錦標賽排序算法,然後用這個算法,解決高盛的那道面試題,即如何從 25 個選手中賽出前三名。 先說說錦標賽排序法,顧名思義,它是受到體育比賽的啟發想出來的。 在單淘汰的錦標賽中,選手們兩兩比賽, 勝者晉級,敗者被淘汰。比如世界乒乓球錦標賽或者大滿貫網球賽就是這麼進行的。這樣一來,就可以把比賽的賽程和結果對應成一個二元樹。在樹中每一個選手是二元樹中的一個葉子結點,每一場比賽就相當於兩個數字在比大小 […]
利用二元樹這個數據結構,或者說工具, 我們就能講解一個經典的計算機算法,叫做錦標賽排序算法,然後用這個算法,解決高盛的那道面試題,即如何從 25 個選手中賽出前三名。 先說說錦標賽排序法,顧名思義,它是受到體育比賽的啟發想出來的。 在單淘汰的錦標賽中,選手們兩兩比賽, 勝者晉級,敗者被淘汰。比如世界乒乓球錦標賽或者大滿貫網球賽就是這麼進行的。這樣一來,就可以把比賽的賽程和結果對應成一個二元樹。在樹中每一個選手是二元樹中的一個葉子結點,每一場比賽就相當於兩個數字在比大小 […]