有人问我数据结构与算法怎么学?

怎么用Python实现常见的数据结构算法?我找到一个github标星66.6k+的仓库,把各种常见算法用Python实现了,而且还有动图演示,非常值得推荐。(黄海广)

仓库说明

这个仓库用Python语言实现了绝大部分算法,主要是用于教学目的,因此效率稍微低于工业界。

仓库地址:

https://github.com/TheAlgorithms/Python

内容说明

包含了常见的算法的Python实现,如二叉树、排序、查找等等。这些是算法工程师必须掌握的技能。

文件目录

动画演示

冒泡排序

桶排序

快速排序

典型代码

(这个是冒泡排序的代码):

from __future__ import print_functiondef bubble_sort(collection):"""Pure implementation of bubble sort algorithm in Python:param collection: some mutable ordered collection with heterogeneouscomparable items inside:return: the same collection ordered by ascendingExamples:>>> bubble_sort([0, 5, 3, 2, 2])[0, 2, 2, 3, 5]>>> bubble_sort([])[]>>> bubble_sort([-2, -5, -45])[-45, -5, -2]>>> bubble_sort([-23,0,6,-4,34])[-23,-4,0,6,34]
"""length = len(collection)for i in range(length-1):swapped = Falsefor j in range(length-1-i):if collection[j] > collection[j+1]:swapped = Truecollection[j], collection[j+1] = collection[j+1], collection[j]if not swapped: break # Stop iteration if the collection is sorted.return collectionif __name__ == '__main__':try:raw_input # Python 2except NameError:raw_input = input # Python 3user_input = raw_input('Enter numbers separated by a comma:').strip()unsorted = [int(item) for item in user_input.split(',')]print(*bubble_sort(unsorted), sep=',')

其它数据结构与算法设计资源推荐

推荐三个我学过的课程:

免费的我推荐严蔚敏老师的数据结构课程,网上可以查到,用C语言实现,当年考博士时候学的就是这个。

视频下载链接:https://pan.baidu.com/s/1O3W85I13gJRI2YsY8boTrw

提取码:unm7

收费的我推荐王争老师的《数据结构与算法之美》:

http://gk.link/a/108GK ,内容挺全面,学了应该对算法有很大帮助。

或者覃超老师视频课《算法通关40讲》:

https://urlify.cn/Qn2eA3,针对面试做了优化。

总结

本文推荐Github上一个标星66.6k+的仓库,把各种常见算法用Python实现了,而且还有动图演示。

仓库地址:

https://github.com/TheAlgorithms/Python

往期精彩回顾适合初学者入门人工智能的路线及资料下载机器学习在线手册深度学习在线手册AI基础下载(pdf更新到25集)备注:加入本站微信群或者qq群,请回复“加群”获取一折本站知识星球优惠券,请回复“知识星球”

喜欢文章,点个在看

Github标星66.6k+:常见数据结构与算法的Python实现相关推荐

  1. Github标星86.4K+:常见数据结构与算法的Python实现

    有人问我数据结构与算法怎么学? 免费的我推荐严蔚敏老师的数据结构课程,网上可以查到,当年考博士时候学的就是这个. 收费的我推荐王争老师的<数据结构与算法之美>,内容挺全面,学了应该对算法有 ...

  2. 在线可玩 | 给AI一张高清照片,分分钟还你细节满满的3D人体模型,GitHub标星3.6k...

    本文经AI新媒体量子位(公众号 ID: QbitAI)授权转载,转载请联系出处 本文长度为800字,建议阅读5分钟 网友们都玩出花儿了. 手动对人体进行3D建模并非易事. 但现在,只给AI一张高清照片 ...

  3. 给AI一张高清照片,分分钟还你细节满满的3D人体模型,GitHub标星3.6k | 在线可玩...

    点击上方,选择星标或置顶,不定期资源大放送! 阅读大概需要15分钟 Follow小博主,每天更新前沿干货 手动对人体进行3D建模并非易事. 但现在,只给AI一张高清照片,它还真就能分分钟搞定这件事. ...

  4. GitHub标星3.6k | 给AI一张高清照片,分分钟还你3D人体模型

    点上方蓝字计算机视觉联盟获取更多干货 在右上方 ··· 设为星标 ★,与你不见不散 仅作学术分享,不代表本公众号立场,侵权联系删除 转载于:量子位 AI博士笔记系列推荐 周志华<机器学习> ...

  5. GitHub标星1.6K,大佬开源的抖音项目,刷屏全网!

    点击上方"Github爱好者社区",选择星标 回复"资料",获取小编整理的一份资料 作者:GG哥 来源:GitHub爱好者社区(github_shequ) 这是 ...

  6. GitHub 标星8.6K:将任何设备转换为电脑的辅助屏幕

    今天,分享一个神奇:deskreen,它可以将将任何设备转换为计算机的辅助屏幕,目前已经在Github上标星 8.6K. Github地址:https://github.com/pavlobu/des ...

  7. B站收藏 12.5w+!GitHub 标星 6.6k+!这门神课拯救了我薄弱的计算机基础

    大家新年好呀,我是你们的 猫哥,我又回来啦 ~ 相信大家过年都过得开心吧 过得开心,那么就开始学习了哈 ~ 前言 作为一个所谓的计算机科班出身的人来说,特别难为情的是自己的计算机基础很差,相信这不是少 ...

  8. Github标星57k+,热榜第一,用Python实现所有算法

    关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! 学会了Python基础知识,想进阶一下,那就来点算法吧!毕竟编程语言只是工具,结构 ...

  9. GitHub标星5.6K,2020腾讯又一力作开源的Android UI框架——QMUI Android

    各位同学,早上好,我是你们的老朋友D_clock爱吃葱花,前些天忙着发版本,最近也在看各种各样的新知识,有好多东西想写啊啊啊啊啊.嗯,先冷静捋一下,卖个关子.扯回正题,今天继续为大家推荐一个Githu ...

最新文章

  1. 如何快速get到AI工程师面试重点,这12道题必备!
  2. centos7 网络服务(二)Unbound实现dns高速缓存
  3. [Codeforces 10E] Greedy Change
  4. 【毕业求职季】-听说你想去大厂看学妹,带你看看字节跳动抖音电商后端面试长啥样?
  5. ArrayList、HashTable、List、Dictionary的演化及如何选择使用
  6. smartfoxserver扩展里面过滤聊天的不合法字符
  7. 「BZOJ2200」[Usaco2011 Jan] 道路和航线 - 最短路+拓扑排序
  8. map 与 unordered_map
  9. java单例默认_Spring bean为什么默认是单例
  10. 设备 esp32_低功耗ESP32手持式袖珍显示屏
  11. POJ 2457 BFS
  12. html 转盘素材,jQuery指针不动转盘动的Rotate转盘插件
  13. Qdata模块-python获取关键词百度指数
  14. django序列化drf2
  15. 脑机接口(1):运动想象(MI)原理、算法、问题和发展趋势
  16. Python小白的数学建模课-A3. 12个新冠疫情数模竞赛赛题与点评
  17. uniapp踩坑系列之二
  18. 花2个月面过华为测开岗,拿个30K不过分吧?
  19. ubuntu下的android JNI入门DEMO
  20. 2021-12-11 WPF上位机 112-欧姆龙协议之FinsTCP协议

热门文章

  1. mybaties xml 的头部
  2. 使用JDBC处理MySQL大数据
  3. C# WinForm程序中强制退出程序以及启动程序
  4. 高性能WEB开发之Web性能测试工具推荐
  5. 基于silerlight for embedd 视频播放器的之一的问题
  6. 学生成绩管理系统设计报告python_python实现简易版学生成绩管理系统
  7. 常用的生物学数据库及网站介绍,你都了解了吗?
  8. Java循环案例-银行存钱问题
  9. Uedit32安装教程附安装包资源
  10. 参考用-惯性导航系统简介(转载)