當一個Python就能夠實現全部的算法時。

今天推薦一個Python學習的乾貨。git

幾個印度小哥,在GitHub上建了一個各類Python算法的新手入門大全,如今標星已經超過2.6萬。github

這個項目主要包括兩部份內容:一是各類算法的基本原理講解,二是各類算法的代碼實現。算法

傳送門在此:安全

https://github.com/TheAlgorit...微信

簡單介紹下。網絡

算法的基本原理講解部分,包括排序算法、搜索算法、插值算法、跳躍搜索算法、快速選擇算法、禁忌搜索算法、加密算法等。機器學習

這部份內容,主要介紹各類不一樣算法的原理,其中很多介紹還給出了動態示意圖,以更初學者可以更直觀的理解。搬運幾個示例:學習

雞尾酒排序算法ui

雞尾酒(Cocktail shaker)排序,也叫雙向冒泡排序(Bidirectional Bubble Sort)等。這是冒泡排序的一種變體。不一樣之處在於,冒泡排序是從低到高比較序列裏的每一個元素,而雞尾酒排序加密

從兩個方向(低到高、高到低)來回排序,效率更高。

快速選擇算法

快速選擇(Quick Select)算法,用於查找無序列表中的第k個最小元素。這種算法及其變體,是實踐中最經常使用的高效選擇算法。

快速選擇算法與快速排序算法相似,選擇一個元素做爲基準來對元素進行分區,將小於和大於基準的元素分在基準左邊和右邊的兩個區域。不一樣的是,快速選擇並不遞歸訪問雙邊,而是隻遞歸進

入一邊的元素中繼續尋找。

ROT13加密算法

Rot13(rotate by 13 places)是一種很是簡單的替換加密算法,用於加密26個英語字母。方法是:把每一個字母用其後第13個字母代替。

固然這種算法破解起來也很簡單,只須要反向替換就行,因此這種算法幾乎提供不了什麼加密安全性,而且常常做爲弱加密的典型案例。

此外,這個項目還給出了多種Python算法的代碼實現。

包括二叉樹(Binary Tree)、動態規劃(Dynamic Programming)、散列(Hashes)、線性代數、機器學習、神經網絡等。

比方在機器學習這個類別裏,給出了隨機森林分類、隨機森林迴歸、樸素貝葉斯、決策樹、k值聚類、線性迴歸、邏輯迴歸、感知機等。

這裏截個梯度降低代碼實現的圖,作個示意:

但願這個項目對你學習有幫助,再給一次傳送門:

https://github.com/TheAlgorit...

還有一事。

這幾個印度小哥,不單單搞了一個學Python的項目,相似的資源收集項目還包括:Java、C、C++、Scala、C#等……

以上就是一個Python就能夠實現全部的算法的詳細內容,但願對你有所幫助。

1449154418-13.jpg

閱讀原文:當一個Python就能夠實現全部的算法時。


期待你的關注

學習更多PHP知識、視頻傳送門:Python視頻課程、Python教程

微信公衆號:

歡迎掃描二維碼關注公衆號,天天都給你推送新鮮的技術文章

qrcode_for_gh_6fbab7352885_258.jpg

相關文章
相關標籤/搜索