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实现zencart产品数据导入到magento(python导入数据)
Apr 03 Python
windows下python之mysqldb模块安装方法
Sep 07 Python
完美解决安装完tensorflow后pip无法使用的问题
Jun 11 Python
深入flask之异步非堵塞实现代码示例
Jul 31 Python
浅谈Django的缓存机制
Aug 23 Python
Django数据库操作之save与update的使用
Apr 01 Python
Jupyter Notebook 文件默认目录的查看以及更改步骤
Apr 14 Python
利用jupyter网页版本进行python函数查询方式
Apr 14 Python
Python坐标轴操作及设置代码实例
Jun 04 Python
python 解决pycharm运行py文件只有unittest选项的问题
Sep 01 Python
python绘图pyecharts+pandas的使用详解
Dec 13 Python
Python3接口性能测试实例代码
Jun 20 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或asp创建网页桌面快捷方式的代码
2010/03/23 PHP
php面向对象中static静态属性与方法的内存位置分析
2015/02/08 PHP
Yii2前后台分离及migrate使用(七)
2016/05/04 PHP
PHP实现适用于文件内容操作的分页类
2016/06/15 PHP
PHP 序列化和反序列化函数实例详解
2020/07/18 PHP
JQuery浮动DIV提示信息并自动隐藏的代码
2010/08/29 Javascript
jquery动画3.创建一个带遮罩效果的图片走廊
2012/08/24 Javascript
用nodejs写的一个简单项目打包工具
2013/05/11 NodeJs
javascript获得网页窗口实际大小的示例代码
2013/09/21 Javascript
推荐9款炫酷的基于jquery的页面特效
2014/12/07 Javascript
javascript实现输出指定行数正方形图案的方法
2015/08/03 Javascript
JavaScript实现添加及删除事件的方法小结
2015/08/04 Javascript
jquery实现动画菜单的左右滚动、渐变及图形背景滚动等效果
2015/08/25 Javascript
基于Jquery实现仿百度百科右侧导航代码附源码下载
2015/11/27 Javascript
JavaScript驾驭网页-获取网页元素
2016/03/24 Javascript
bootstrap组件之按钮式下拉菜单小结
2017/01/19 Javascript
vue component组件使用方法详解
2017/07/14 Javascript
详解vue填坑之解决部分浏览器不支持pushState方法
2018/07/12 Javascript
Vue-cli打包后部署到子目录下的路径问题说明
2020/09/02 Javascript
nginx配置域名后的二级目录访问不同项目的配置操作
2020/11/06 Javascript
Python 随机生成中文验证码的实例代码
2013/03/20 Python
Python、Javascript中的闭包比较
2015/02/04 Python
python实现kNN算法
2017/12/20 Python
python简单实现操作Mysql数据库
2018/01/29 Python
python使用PyQt5的简单方法
2019/02/27 Python
Python 格式化打印json数据方法(展开状态)
2020/02/27 Python
用CSS3实现无限循环的无缝滚动的示例代码
2017/11/01 HTML / CSS
html5+CSS3+JS实现七夕言情功能代码
2017/08/28 HTML / CSS
微软俄罗斯官方网站:Microsoft俄罗斯
2016/09/18 全球购物
中专生毕业个人鉴定
2014/02/26 职场文书
交通事故和解协议书
2014/09/25 职场文书
2015年大学生党员承诺书
2015/04/27 职场文书
全国助残日活动总结
2015/05/11 职场文书
2015年机关纠风工作总结
2015/05/15 职场文书
六一文艺汇演主持词
2015/06/30 职场文书
Python与C++中梯度方向直方图的实现
2022/03/17 Python