本日引荐一个Python进修的干货。
几个印度小哥,在GitHub上建了一个种种Python算法的新手入门大全,如今标星已凌驾2.6万。
这个项目重要包含两部份内容:一是种种算法的基本道明白说,二是种种算法的代码完成。
传送门在此:
https://github.com/TheAlgorithms/Python
简朴引见下。
算法的基本道明白说部份,包含排序算法、搜索算法、插值算法、腾跃搜索算法、疾速挑选算法、忌讳搜索算法、加密算法等。
相干引荐:《Python视频教程》
这部份内容,重要引见种种差别算法的道理,个中不少引见还给出了动态表示图,以更初学者可以更直观的明白。搬运几个示例:
鸡尾酒排序算法
鸡尾酒(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/TheAlgorithms/Python
另有一事。
这几个印度小哥,不单单议搞了一个学Python的项目,相似的资本网络项目还包含:Java、C、C++、Scala、C#等……
以上就是一个Python就可以完成一切的算法的细致内容,更多请关注ki4网别的相干文章!