Implement all the algorithms with Python! Github star near 5w

Today recommended a dry Python learning.

Several Indian brother, on GitHub to build a variety of entry-novice Python algorithm Guinness, now has more than 26,000 starred. The project includes two parts: First, the basic principles of various algorithms to explain, the second is the code of various algorithms to achieve.

Portal here:

https://github.com/TheAlgorithms/Python

Brief introduction.

The basic principle of algorithm on parts, including sorting algorithm, search algorithm, interpolation algorithm, jump search algorithm, fast selection algorithm, tabu search algorithm, encryption algorithm.

This section, Introduces various algorithms, many of which are also given the dynamic schematic introduced to more learner can more intuitive understanding. Handling several examples:

Cocktail sorting algorithm

Cocktail (Cocktail shaker) sort, also known as bi-directional bubble sort (Bidirectional Bubble Sort) and so on. This is a variant of bubble sort. Except that, bubble sort is from low to high comparing each element in the sequence, and cocktails ordered from two directions (low to high, high to low) side-sorting, more efficient.

Fast Selection Algorithm

Quick selection (Quick Select) algorithm for finding unordered list in the k-th smallest element. This algorithm and variants thereof, is in practice the most common and efficient selection algorithm.

Fast algorithm to select similar quick sort algorithm, select an element of the partition as a reference element, the element is smaller and larger than the reference area of ​​the reference points in both the left and right. The difference is that choice is not fast recursive bilateral visit, but only one side of the element into the recursive keep looking.

ROT13 encryption algorithm

 

Rot13 (rotate by 13 places) is a very simple substitution cipher algorithm used to encrypt the 26 English letters. Method: each letter was replaced with the first 13 letters thereafter.

Of course, this algorithm is also very simple to crack, just the reverse replacement on the line, so this algorithm can barely provide any encryption security, and is often used as a typical case of weak encryption.

In addition, the project also gives several code for Python algorithm to achieve .

包括二叉树(Binary Tree)、动态规划(Dynamic Programming)、散列(Hashes)、线性代数、机器学习、神经网络等。

 

比方在机器学习这个类别里,给出了随机森林分类、随机森林回归、朴素贝叶斯、决策树、k值聚类、线性回归、逻辑回归、感知机等。

这里截个梯度下降代码实现的图,做个示意。

 

希望这个项目对你学习有帮助,再给一次传送门:

https://github.com/TheAlgorithms/Python

还有一事。

这几个印度小哥,不仅仅搞了一个学Python的项目,类似的资源收集项目还包括:Java、C、C++、Scala、C#等……

 

Guess you like

Origin blog.csdn.net/sinat_38682860/article/details/94585821