基础操作部分
字符串处理与查找
排序
查找
数据结构
队列
链表
栈
堆
哈希表
图
二叉树
字典树
并查集
运算部分
布尔运算
基础数学运算
线性代数与矩阵
算数分析
网络协议部分
文件传输
网络流
服务端与客户端
进阶部分
机器学习
神经网络
图像处理
其他
动态编程
编程题解题集
密码学
重点内容介绍
在这个项目中并不是对所有内容都进行了详细介绍,有部分主题的代码非常丰富。为了帮助大家高效地利用这一学习资源,笔者将其中比较详细的部分单独摘出,并做一个简单的梳理,希望对大家有所帮助。
数据结构
在 data_structure 文件夹下,项目作者提供了大部分常用的 python 的实现代码,包括哈希表、堆、栈、队列等等。具体如下图所示。
排序
在 sorts 文件夹下,作者给出了关于相关排序算法的实现,包括冒泡排序、插入排序、堆排序等大部分常用算法。部分算法见下图。
查找
针对于查找问题,作者在 searches 文件夹中给出了包括顺序查找、二分查找、禁忌搜索等常见查找算法的实现。
动态编程
在 dynamic_programming 部分,作者提供了一些常用的动态编程方法,代码主要针对于各类动态编程任务。下图展示了部分代码列表。
图结构的相关算法
在 graphs 文件夹下,作者针对于图结构的相关算法给出了代码,包括 dijkstra 最短路径算法及其变体等。下图展示了部分代码。
数学运算
在 maths 文件夹下,作者对 python 标准库支持的一些运算操作进行了实现,包括基础的加减乘除运算、查找最大/最小值等等,部分代码如下。
机器学习部分
在 machine_learning 文件夹中的内容主要为传统的机器学习方法的代码实现,包括随机森林、朴素贝叶斯、kmeans 算法、线性回归等。
密码学
在 ciphers 这一部分,作者给出了base64等编码的转码操作,并针对凯撒密码等加密方法给出了相应的实现代码。部分代码如下。
ProjectEuler 习题集解答
ProjectEuler 是一个在线习题集,它与LeetCode等习题集不同的地方在于,该习题集主要针对于具有一定数学基础的人入门 Python 编程使用。该网站会对代码的效率进行检查。在 project_euler 文件夹中,作者提供了33个习题的解答代码,帮助大家获得更愉悦的刷题体验。
结语
以上就是今天笔者为大家分享的算法实现大礼包内容,希望对大家有所帮助!具体项目内容参见如下地址:
GitHub项目地址:
https://github.com/TheAlgorithms/Python
GitHub项目地址:
https://github.com/TheAlgorithms/Python
【END】