Python编程二分法实现冒泡算法+快速排序代码示例


Posted in Python onJanuary 15, 2018

本文分享的实例主要是Python编程二分法实现冒泡算法+快速排序,具体如下。

冒泡算法:

#-*- coding: UTF-8 -*-
#冒泡排序

def func(lt):
if type(lt).__name__ !='list' and type(lt).__name__ !='tuple':
return
if type(lt).__name__ == 'tuple':
return list(lt)
for i in range(1,len(lt)-1):
   for j in range(1,len(lt)-i):
     if lt[j] > lt[j+1]:
     lt[j],lt[j+1] = lt[j+1],lt[j]
return lt


lt_01 = [2,34,5,14,7,28]
print func(lt_01)

=================================================

二分法:(通过函数递归调用实现)

def func(lt=[]):
  if type(lt).__name__ !='list' and type(lt).__name__!='tuple':
    return
  if type(lt).__name__ =='tuple':
    return list(lt)
  if len(lt)<=1:
    return lt
  k = lt[0]
  lt_l = []
  lt_r = []
  lt_m = []
  for i in lt:
    if i>k:
      lt_r.append(i)
    elif i<k:
      lt_l.append(i)
    else:
      lt_m.append(i)
  lt_l=func(lt_l)
  lt_r=func(lt_r)
  return lt_l + lt_m + lt_r


a = [2,4,12,6,23,16,28]
print func(a)

总结

以上就是本文关于Python编程二分法实现冒泡算法+快速排序代码示例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
python下载文件时显示下载进度的方法
Apr 02 Python
浅析Python中的多条件排序实现
Jun 07 Python
简单实现python收发邮件功能
Jan 05 Python
Python实现读取及写入csv文件的方法示例
Jan 12 Python
PyTorch实现更新部分网络,其他不更新
Dec 31 Python
详解Python的三种拷贝方式
Feb 11 Python
Python decimal模块使用方法详解
Jun 08 Python
matplotlib 生成的图像中无法显示中文字符的解决方法
Jun 10 Python
Python3 webservice接口测试代码详解
Jun 23 Python
基于python实现音乐播放器代码实例
Jul 01 Python
详解Django自定义图片和文件上传路径(upload_to)的2种方式
Dec 01 Python
anaconda升级sklearn版本的实现方法
Feb 22 Python
selenium python浏览器多窗口处理代码示例
Jan 15 #Python
100行python代码实现跳一跳辅助程序
Jan 15 #Python
tornado 多进程模式解析
Jan 15 #Python
200 行python 代码实现 2048 游戏
Jan 12 #Python
一篇文章快速了解Python的GIL
Jan 12 #Python
Python获取当前公网ip并自动断开宽带连接实例代码
Jan 12 #Python
python SSH模块登录,远程机执行shell命令实例解析
Jan 12 #Python
You might like
玩家交还《星际争霸》原始码光盘 暴雪报以厚礼
2017/05/05 星际争霸
PHP中路径问题的解决方案
2006/10/09 PHP
php 引用(&amp;)详解
2009/11/20 PHP
服务器上配置PHP运行环境教程
2015/02/12 PHP
jquery scrollTop方法根据滚动像素显示隐藏顶部导航条
2013/05/27 Javascript
jquery和javascript的区别(常用方法比较)
2013/07/04 Javascript
JavaScript每天定时更换皮肤样式的方法
2015/07/01 Javascript
Backbone.js框架中Model与Collection的使用实例
2016/05/07 Javascript
BootStrap中按钮点击后被禁用按钮的最佳实现方法
2016/09/23 Javascript
js阻止冒泡和默认事件(默认行为)详解
2016/10/20 Javascript
ES6新特性之Symbol类型用法分析
2017/03/31 Javascript
详解Node.js模板引擎Jade入门
2018/01/19 Javascript
vue点击input弹出带搜索键盘并监听该元素的方法
2018/08/25 Javascript
Vue一次性简洁明了引入所有公共组件的方法
2018/11/28 Javascript
node实现mock-plugin中间件的方法
2019/12/25 Javascript
vue中可编辑树状表格的实现代码
2020/10/31 Javascript
Python实现连接postgresql数据库的方法分析
2017/12/27 Python
python实现求解列表中元素的排列和组合问题
2018/03/15 Python
深入分析python数据挖掘 Json结构分析
2018/04/21 Python
实用自动化运维Python脚本分享
2018/06/04 Python
python实现梯度下降和逻辑回归
2020/03/24 Python
Python 实现打印单词的菱形字符图案
2020/04/12 Python
Win10下用Anaconda安装TensorFlow(图文教程)
2020/06/18 Python
django Model层常用验证器及自定义验证器详解
2020/07/15 Python
python中pyplot基础图标函数整理
2020/11/10 Python
GOOD AMERICAN官网:为曲线性感而设计
2017/12/28 全球购物
Shopbop中文官网:美国亚马逊旗下时尚购物网站
2020/12/15 全球购物
分布式数据库需要考虑哪些问题
2013/12/08 面试题
解除劳动合同协议书
2014/04/14 职场文书
安全宣传标语口号
2014/06/06 职场文书
工作经历证明书范文
2014/11/02 职场文书
公司新员工欢迎词
2015/09/30 职场文书
前端学习——JavaScript原生实现购物车案例
2021/03/31 Javascript
基于Redis zSet实现滑动窗口对短信进行防刷限流的问题
2022/02/12 Redis
Python开发五子棋小游戏
2022/05/02 Python
java中如何截取字符串最后一位
2022/07/07 Java/Android