0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一份用Python代码实现算法的资源帖,涵盖从入门到高级的各类算法

电子工程师 来源:lq 2019-05-11 10:30 次阅读

【导语】数据结构与算法是所有人都要学习的基础课程,自己写算法的过程可以帮助我们更好地理解算法思路,不要轻视每一个算法,一些虽然看似容易,但可能有很多坑。但是坑还是要自己一个一个踩过来的,而且也只有自己踩过坑,才能让自己从理论到技能都得到提升。为了帮助大家在这个假期能提高学习效率,进阶 Python 技能,营长为大家推荐了一份用 Python代码实现算法的资源帖,涵盖从入门到高级的各类算法。

下文中,营长首先对项目的整体内容进行了一个归纳,之后为大家选取了几个内容比较丰富的部分,供大家更高效地使用这一资源。

项目概览

这个项目为大家汇总了Python标准库实现的大部分算法,对于一些神经网络模型也有所涉及。在代码的效率上,该项目的内容可能并没有Python 标准库那样高效,但是作为一个学习资源还是很值得一读。下面对项目的内容进行一个大概的梳理。为了使得内容更加易读,营长将该项目中的内容划分为了五个部分。

基础操作部分

字符串处理与查找

排序

查找

数据结构

队列

链表

哈希表

二叉树

字典树

并查集

运算部分

布尔运算

基础数学运算

线性代数与矩阵

算数分析

网络协议部分

文件传输

网络流

服务端与客户端

进阶部分

机器学习

神经网络

图像处理

其他

动态编程

编程题解题集

密码学

重点内容介绍

在这个项目中并不是对所有内容都进行了详细介绍,有部分主题的代码非常丰富。为了帮助大家高效地利用这一学习资源,营长将其中比较详细的部分单独摘出,并做一个简单的梳理,希望对大家有所帮助。

数据结构

在 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

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 算法
    +关注

    关注

    23

    文章

    4448

    浏览量

    90721
  • 二叉树
    +关注

    关注

    0

    文章

    74

    浏览量

    12235
  • python
    +关注

    关注

    51

    文章

    4667

    浏览量

    83443

原文标题:算法实现没思路?最全Python算法实现大礼包!(附学习资源)

文章出处:【微信号:rgznai100,微信公众号:rgznai100】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    机器状态监测的高级算法实现课程

    机器状态监测的高级算法实现课程议程机器状态监测(MCM)简述常用的转动机器状态监测算法成功案例总结[hide]机器状态监测的高级
    发表于 12-16 09:25

    100大洋求一份完整可用的RankBoost算法的matlab源码

    100大洋求一份完整可用的RankBoost算法的matlab源码,要带比较详细注释或者对于如何将数据转换成标准输入数据有详细说明的,跪求各位大神了~~
    发表于 05-06 10:19

    一份数控的电压源的PID C语言控制算法,谢谢!

    一份数控的电压源的PID C语言控制算法,请各位大神指点下,谢谢!
    发表于 08-05 11:12

    一份STM32F103的单片机中值滤波算法的程序

    一份STM32F103的单片机中值滤波算法的程序
    发表于 10-07 10:41

    一份基于STM32的PID算法控制高清视频

    一份基于STM32的PID算法控制高清视频http://pan.baidu.com/s/1dFyrJeL
    发表于 10-08 17:09

    算法设计硬线逻辑的实现

    算法设计硬线逻辑的实现
    发表于 01-24 10:57

    Python的Apriori算法和FP-Growth算法是什么

    [源码和文档分享]基于Python实现的Apriori算法和FP-Growth算法的频繁项集挖掘的研究与实现
    发表于 06-04 12:49

    KNN分类算法python代码实现

    kNN分类算法Python实现
    发表于 06-05 12:02

    不可错过!人工神经网络算法、PID算法Python人工智能学习等资料包分享(附源代码

    先了解生物神经元模型。 >>>点击查看下载资料 2.Python编程:入门实践 如何学习编写第个程序,每个程序员都
    发表于 09-13 16:41

    BP神经网络算法 python实现

    直接上代码是最有效的学习方式。这篇教程通过由一段简短的 python 代码实现的非常简单的实例来讲解 BP 反向传播算法
    发表于 12-29 14:06 2.1w次阅读
    BP神经网络<b class='flag-5'>算法</b> <b class='flag-5'>python</b><b class='flag-5'>实现</b>

    蚁群算法python编程实现

    本文主要介绍了Python编程实现蚁群算法详解,涉及蚂蚁算法的简介,主要原理及公式,以及Python中的
    发表于 02-02 10:36 7275次阅读
    蚁群<b class='flag-5'>算法</b><b class='flag-5'>python</b>编程<b class='flag-5'>实现</b>

    Python实现所有算法-基本牛顿法

    Python实现所有算法-二分法 Python实现所有算法-力系统是否静态平衡
    的头像 发表于 07-13 10:40 1318次阅读

    10种顶流聚类算法Python实现(附完整代码

    分享一篇关于聚类的文章:10种聚类算法Python代码
    的头像 发表于 01-07 09:33 818次阅读

    [源代码]Python算法详解

    [源代码]Python算法详解[源代码]Python算法详解
    发表于 06-06 17:50 0次下载

    基于Python实现随机森林算法

    机器学习算法是数据挖掘、数据能力分析和数学建模必不可少的一部分,而随机森林算法和决策树算法是其中较为常用的两种算法,本文将会对随机森林算法
    的头像 发表于 09-21 11:17 630次阅读
    基于<b class='flag-5'>Python</b><b class='flag-5'>实现</b>随机森林<b class='flag-5'>算法</b>