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实现的金山快盘的签到程序
Jan 17 Python
在Python中操作字典之setdefault()方法的使用
May 21 Python
在Python的Django框架中编写编译函数
Jul 20 Python
Python设计模式之抽象工厂模式
Aug 25 Python
python微信公众号之关键词自动回复
Jun 15 Python
python批量赋值操作实例
Oct 22 Python
Pycharm+Scrapy安装并且初始化项目的方法
Jan 15 Python
Django高级编程之自定义Field实现多语言
Jul 02 Python
python将字符串转换成json的方法小结
Jul 09 Python
Django后端接收嵌套Json数据及解析详解
Jul 17 Python
Python文件时间操作步骤代码详解
Apr 13 Python
Pandas自定义选项option设置
Jul 25 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中一些可以替代正则表达式函数的字符串操作函数
2014/11/17 PHP
PHP实现随机数字、字母的验证码功能
2018/08/01 PHP
基于Jquery的温度计动画效果
2010/06/18 Javascript
IE6,IE7,IE8下使用Javascript记录光标选中范围(已补全)
2011/08/28 Javascript
js 验证密码强弱的小例子
2013/03/21 Javascript
js调用后台servlet方法实例
2013/06/09 Javascript
Jquery倒数计时按钮setTimeout的实例代码
2013/07/04 Javascript
js中widow.open()方法使用详解
2013/07/30 Javascript
jQuery制作圣诞主题页面 更像是爱情影集
2016/08/10 Javascript
angular4模块中给标签添加背景图的实现方法
2017/09/15 Javascript
浅谈Angular4中常用管道
2017/09/27 Javascript
vue中实现滚动加载更多的示例
2017/11/08 Javascript
JavaScript实现封闭区域布尔运算的示例代码
2018/06/25 Javascript
javascript和php使用ajax通信传递JSON的实例
2018/08/21 Javascript
Node批量爬取头条视频并保存方法
2018/09/20 Javascript
Vue Router的手写实现方法实现
2020/03/02 Javascript
JS数组的高级使用方法示例小结
2020/03/14 Javascript
Python读取环境变量的方法和自定义类分享
2014/11/22 Python
Python初学时购物车程序练习实例(推荐)
2017/08/08 Python
Django 实现购物车功能的示例代码
2018/10/08 Python
关于python多重赋值的小问题
2019/04/17 Python
Python实现的删除重复文件或图片功能示例【去重】
2019/04/23 Python
python删除列表元素的三种方法(remove,pop,del)
2019/07/22 Python
Tensorflow分批量读取数据教程
2020/02/07 Python
keras 读取多标签图像数据方式
2020/06/12 Python
Python2与Python3关于字符串编码处理的差别总结
2020/09/07 Python
html5的websockets全双工通信详解学习示例
2014/02/26 HTML / CSS
美国网上订购鲜花:FTD
2016/09/23 全球购物
美国木工工具和用品商店:Woodcraft
2019/10/30 全球购物
Auguste The Label官网:澳大利亚一家精品女装时尚品牌
2020/06/14 全球购物
Servlet如何得到客户端机器的信息
2014/10/17 面试题
酒店管理专业学生求职信
2013/09/27 职场文书
三方合作协议书范本
2014/04/18 职场文书
高中生第一学年自我鉴定
2014/09/12 职场文书
2015年乡镇人大工作总结
2015/04/22 职场文书
微信小程序中wxs文件的一些妙用分享
2022/02/18 Javascript