這道問題就是要囚犯通過共同約定(比較術語一些就是協議,PROTOCAL)來自救.
用山東話,湖南話,或者是通過拖長聲音都是共同約定.隻要有效,都是好算法.甚至於拖長聲比間接回答更不著痕跡.
但是歸結到數學模型上,他們都是一族的,有一個共同模型!T=F.其根本高明的地方在於通過一次有效通信傳遞兩個信息,讓兩個信息接受方都滿意.
具體到實用上,比如設計一個分布式算法,計算節點在網絡的不同站點,算法的意義就明顯了.
這種算法通過環狀結構就能完成,計算複雜度最低O(N),節點計算量最小O(1).
奇偶算法必須通過N次星型通訊來廣播單個節點計算結果O(N),同時還要進行一次環狀(挨個回答顏色)和N(N-1)次點對點通訊(要POLL每個下級節點取得顏色狀態).最後解碼計算量也是O(N).
如果給這種情況讓你選擇,我想你也會明白.
即使是單個計算節點,兩種算法都能達到空間複雜度O(1),但是前者時間複雜度O(N),後者O(N^2).
很多人不服氣的地方就在於我利用一次機會傳達了比他能想象的多的信息,使得他們看起來深的不的了的事情突然沒了技術含量.
我要說的就是,隻有想不到,沒有做不到.況且,這隻是一道高中生的題.