好玩的演算法
1. 有一種從0-9隨便挑一個數經過一系列演算法之後結果都是9,這演算法怎麼算來的
先把這個數乘以3,又加上3,再乘以3。最後把所得數的個位與十位相加,總等於9。
2. 遺傳演算法有哪些有趣應用
遺傳演算法的運算對象是表示個體的符號串,所以必須把變數 x1, x2 編碼為一種符號串。本題中,用無符號二進制整數來表示。因 x1, x2 為 0 ~ 7之間的整數,所以分別用3位無符號二進制整數來表示,將它們連接在一起所組成的6位無符號二進制數就形成了個體的基因型,表示一個可行解。例如,基因型 X=101110 所對應的表現型是:x=[ 5,6 ]。體的表現型x和基因型X之間可通過編碼和解碼程序相互轉換。2) 初始群體的產生遺傳演算法是對群體進行的進化操作,需要給其淮備一些表示起始搜索點的初始群體數據。本例中,群體規模的大小取為4,即群體由4個個體組成,每個個體可通過隨機方法產生。選擇運算(或稱為復制運算)把當前群體中適應度較高的個體按某種規則或模型遺傳到下一代群體中。一般要求適應度較高的個體將有更多的機會遺傳到下一代。
3. 哈希是什麼,誰能解釋一下
哈希音譯自「Hash」,又名為「散列」。本質上是一種計算機程序,可接收任意長度的信心輸入,然後通過哈希演算法,創建小的數字「指紋」的方式。
例如數字與字母的結合,輸出的就為「哈希值」。從數學術語上說,就是這個哈希函數,是將任意長度的數據,映射在有限長度的域上。總體而言,哈希函數用於,將消息或數據壓縮,生成數據摘要,最終使數據量變小,並擁有固定格式。
那麼哈希演算法的作用又是什麼呢?
(1) 在龐大的資料庫中,由於哈希值更為短小,被找到更為容易,因此,哈希使數據的存儲與查詢速度更快。
(2) 哈希能對信息進行加密處理,使得數據傳播更為安全。
哈希演算法解決了什麼生活問題?
看似深奧的數學函數,又或是計算機程序的哈希演算法,其實跟我們的生活息息相關。就拿每年雙十一的快遞來說,實際上,哈希演算法原理提高了快遞入庫出庫的速度。