各種流行演算法的形象比喻

2021-06-15 02:49:01 字數 494 閱讀 6575

對於一些名字聽起來比較玄幻的演算法,我在乙個qq群裡看到如下解釋,覺得挺形象的,貼出來分享一下:

這些演算法都有什麼含義?

首先給出個區域性搜尋,模擬退火,遺傳演算法,禁忌搜尋的形象比喻:

為了找出地球上最高的山,一群有志氣的兔子們開始想辦法。

1.兔子朝著比現在高的地方跳去。他們找到了不遠處的最高山峰。但是這座山不一定是珠穆朗瑪峰。這就是區域性搜尋,它不能保證區域性最優值就是全域性最優值。

2.兔子喝醉了。他隨機地跳了很長時間。這期間,它可能走向高處,也可能踏入平地。但是,他漸漸清醒了並朝最高方向跳去。這就是模擬退火。

3.兔子們吃了失憶藥片,並被發射到太空,然後隨機落到了地球上的某些地方。他們不知道自己的使命是什麼。但是,如果你過幾年就殺死一部分海拔低的兔子,多產的兔子們自己就會找到珠穆朗瑪峰。這就是遺傳演算法。

4.兔子們知道乙個兔的力量是渺小的。他們互相轉告著,**的山已經找過,並且找過的每一座山他們都留下乙隻兔子做記號。他們制定了下一步去**尋找的策略。這就是禁忌搜尋。

BIO NIO AIO的形象比喻

bio blocking i o 同步阻塞i o模式。nio new i o 同步非阻塞模式。aio asynchronous i o 非同步非阻塞i o模型。先看阻塞和非阻塞的區別,以燒水為例 阻塞vs非阻塞 人是否坐在水壺前面一直等。同步vs非同步 水壺是不是在水燒開之後主動通知人。再加上同步 ...

用形象的比喻學程式設計

為什麼c 指標不安全 比喻 假設你是乙個殺手,上級要你去槍斃乙個人,c 的引用的方法是 找到人,姓名,位址,性別都對頭後開槍,而c 的指標則是按照身份證號碼,正常情況下,按照身份證號碼的方法很快很方便,可是萬一目標的身份證被別人 拿去了那麼你將殺錯了乙個好人啊!比喻 我們把windows比做乙個遊樂...

程序和執行緒的形象比喻

程序 process 和執行緒 thread 是作業系統的基本概念,但是它們比較抽象,不容易掌握。最近,我讀到一篇材料,發現有乙個很好的模擬,可以把它們解釋地清晰易懂。1.計算機的核心是cpu,它承擔了所有的計算任務。它就像一座工廠,時刻在執行。2.假定工廠的電力有限,一次只能供給乙個車間使用。也就...