GitHub 热门:Python 算法大全,Star 超过 2 万


Posted in Python onApril 29, 2019

4 月 27 日,GitHub 趋势榜第 3 位是一个用 Python 编码实现的算法库,Star 数早已达到 26000+

GitHub 热门:Python 算法大全,Star 超过 2 万

链接:https://github.com/TheAlgorithms/Python

这个库涵盖了多种算法和数据结构的介绍,比如:

  • 排序算法(冒泡排序、希尔排序、插入排序、桶排序、合并排序、快速排序、堆排序、选择排序等)、
  • 查找算法(线性查找、二分查找、插值查找等)
  • 加密算法(凯撒加密、RSA、ROT13 等)
  • 机器学习
  • 数字图像处理
  • 动态规划
  • 常见数据结构(队列、栈、链表、树等)

GitHub 热门:Python 算法大全,Star 超过 2 万

这个库虽然包括的种类很多,但内容其实分了 2 方面:① 算法的原理简介;② 算法的代码实现;

比如:冒泡算法的 Python 实现

from __future__ import print_function
def bubble_sort(collection):
  """Pure implementation of bubble sort algorithm in Python
  :param collection: some mutable ordered collection with heterogeneous
  comparable items inside
  :return: the same collection ordered by ascending
  Examples:
  >>> 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 = False
    for j in range(length-1-i):
      if collection[j] > collection[j+1]:
        swapped = True
        collection[j], collection[j+1] = collection[j+1], collection[j]
    if not swapped: break # Stop iteration if the collection is sorted.
  return collection
if __name__ == '__main__':
  try:
    raw_input     # Python 2
  except NameError:
    raw_input = input # Python 3
  user_input = raw_input('Enter numbers separated by a comma:').strip()
  unsorted = [int(item) for item in user_input.split(',')]
  print(*bubble_sort(unsorted), sep=',')

感兴趣的童鞋,请收藏:

https://github.com/TheAlgorithms/Python

好了,就给大家介绍到这里吧,希望大家喜欢!

Python 相关文章推荐
详解Python中的Cookie模块使用
Jul 06 Python
Python subprocess模块详细解读
Jan 29 Python
python中scikit-learn机器代码实例
Aug 05 Python
在Python dataframe中出生日期转化为年龄的实现方法
Oct 20 Python
PyQt编程之如何在屏幕中央显示窗体的实例
Jun 18 Python
Python如何爬取微信公众号文章和评论(基于 Fiddler 抓包分析)
Jun 28 Python
Python DataFrame一列拆成多列以及一行拆成多行
Aug 06 Python
Pytorch中的variable, tensor与numpy相互转化的方法
Oct 10 Python
python 实现快速生成连续、随机字母列表
Nov 28 Python
python爬虫爬取监控教务系统的思路详解
Jan 08 Python
Django如何批量创建Model
Sep 01 Python
python绘制箱型图
Apr 27 Python
python实现nao机器人手臂动作控制
Apr 29 #Python
python机器人运动范围问题的解答
Apr 29 #Python
浅谈Python3中strip()、lstrip()、rstrip()用法详解
Apr 29 #Python
Python 实现微信防撤回功能
Apr 29 #Python
python程序控制NAO机器人行走
Apr 29 #Python
Django web框架使用url path name详解
Apr 29 #Python
Python对HTML转义字符进行反转义的实现方法
Apr 28 #Python
You might like
PHP循环语句笔记(foreach,list)
2011/11/29 PHP
php中使用接口实现工厂设计模式的代码
2012/06/17 PHP
thinkphp自定义权限管理之名称判断方法
2017/04/01 PHP
不错的新闻标题颜色效果
2006/12/10 Javascript
jQuery中对节点进行操作的相关介绍
2013/04/16 Javascript
使用JQUERY进行后台页面布局控制DIV实现左右式
2014/01/07 Javascript
jQuery 滑动方法slideDown向下滑动元素
2014/01/16 Javascript
动态加载脚本提升javascript性能
2014/02/24 Javascript
JS 在指定数组中随机取出N个不重复的数据
2014/06/10 Javascript
网页中表单按回车就自动提交的问题的解决方案
2014/11/03 Javascript
jQuery简单实现input文本框内灰色提示文本效果的方法
2015/12/02 Javascript
jQuery模拟爆炸倒计时功能实例代码
2017/08/21 jQuery
Vue.js单向绑定和双向绑定实例分析
2018/08/14 Javascript
js canvas画布实现高斯模糊效果
2018/11/27 Javascript
JS实现获取自定义属性data值的方法示例
2018/12/19 Javascript
vue开发简单上传图片功能
2020/06/30 Javascript
vue-amap根据地址回显地图并mark的操作
2020/11/03 Javascript
python中类变量与成员变量的使用注意点总结
2017/04/29 Python
用Python登录好友QQ空间点赞的示例代码
2017/11/04 Python
Django-Rest-Framework 权限管理源码浅析(小结)
2018/11/12 Python
Python函数的参数常见分类与用法实例详解
2019/03/30 Python
python使用Qt界面以及逻辑实现方法
2019/07/10 Python
python3.7通过thrift操作hbase的示例代码
2020/01/14 Python
Pytorch模型转onnx模型实例
2020/01/15 Python
基于Python获取照片的GPS位置信息
2020/01/20 Python
后端开发使用pycharm的技巧(推荐)
2020/03/27 Python
AmazeUI 评论列表的实现示例
2020/08/13 HTML / CSS
德国受欢迎的旅游和休闲网站:lastminute.de
2019/09/23 全球购物
艺术应用与设计专业个人的自我评价
2013/11/19 职场文书
地震捐款倡议书
2014/08/29 职场文书
恰同学少年观后感
2015/06/08 职场文书
爱鸟护鸟的宣传语
2015/07/13 职场文书
同事欢送会致辞
2015/07/31 职场文书
办公室卫生管理制度
2015/08/04 职场文书
怎样做好公众演讲能力?
2019/08/28 职场文书
Oracle 11g数据库使用expdp每周进行数据备份并上传到备份服务器
2022/06/28 Oracle