Python 冒泡排序 - 菜鸟教程

文章推薦指數: 80 %
投票人數:10人

这个算法的名字由来是因为越小的元素会经由交换慢慢"浮"到数列的顶端。

实例. def bubbleSort(arr): n ... 菜鸟教程--学的不仅是技术,更是梦想! 首页 HTML CSS JavaScript Vue Bootstrap NodeJS Python3 Python2 Java C C++ C# Go SQL Linux jQuery 本地书签 首页 HTML CSS JS 本地书签 Search Python3教程 Python2教程 Vue3教程 vue2教程 Bootstrap3教程 Bootstrap4教程 Bootstrap5教程 Bootstrap2教程 Python3教程 Python3教程 Python3简介 Python3环境搭建 Python3VScode Python3基础语法 Python3基本数据类型 Python3数据类型转换 Python3推导式 Python3解释器 Python3注释 Python3运算符 Python3数字(Number) Python3字符串 Python3列表 Python3元组 Python3字典 Python3集合 Python3编程第一步 Python3条件控制 Python3循环语句 Python3迭代器与生成器 Python3函数 Python3数据结构 Python3模块 Python3输入和输出 Python3File Python3OS Python3错误和异常 Python3面向对象 Python3命名空间/作用域 Python3标准库概览 Python3实例 Python测验 Python3高级教程 Python3正则表达式 Python3CGI编程 Python3MySQL(mysql-connector) Python3MySQL(PyMySQL) Python3网络编程 Python3SMTP发送邮件 Python3多线程 Python3XML解析 Python3JSON Python3日期和时间 Python3内置函数 Python3MongoDB Python3urllib PythonuWSGI安装配置 Python3pip Python3operator Pythonmath Pythonrequests Pythonrandom Python选择排序 Python归并排序 Python冒泡排序 Python3实例 冒泡排序(BubbleSort)也是一种简单直观的排序算法。

它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。

走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。

这个算法的名字由来是因为越小的元素会经由交换慢慢"浮"到数列的顶端。

实例 defbubbleSort(arr): n=len(arr) #遍历所有数组元素 foriinrange(n): #Lastielementsarealreadyinplace forjinrange(0,n-i-1): ifarr[j]>arr[j+1]: arr[j],arr[j+1]=arr[j+1],arr[j] arr=[64,34,25,12,22,11,90] bubbleSort(arr) print("排序后的数组:") foriinrange(len(arr)): print("%d"%arr[i]), 执行以上代码输出结果为: 排序后的数组: 11 12 22 25 34 64 90 Python3实例 Python选择排序 Python归并排序 3篇笔记 写笔记 #0   小花花  124***[email protected]参考: """冒泡排序 Bubblesort.py""" fromrandomimportrandrange,shuffle defBubblesort(): array=[] whilelen(array)<12:#范围内随机取12个数值 array.append(randrange(-99,101,3)) shuffle(array)#打乱数组 print('排序前数组:{}'.format(array)) foriinrange(12): forjinrange(11-i): ifarray[j]>array[j+1]:#遇到较小值前后交换 array[j],array[j+1]=array[j+1],array[j] print('排序后数组:{}'.format(array)) Bubblesort()小花花   小花花  124***[email protected]年前(2019-07-14) #0   JonnyHuang  joo***[email protected]可选择升序和降序。

#可选升降序的冒泡排序,order>0升序,order<0降序 defbubbleSort(arr,order): max=len(arr) foriinrange(0,max): j=1 while(jarr[j])and(int(order)>0))or((arr[j-1]nums[j+1]: nums[j],nums[j+1]=nums[j+1],nums[j]#大数与小数互换 flag=False#如果交换了就推翻假设 ifflag:#如果假设成立,则结束交换 break print(nums) 实例二(最基础的if循环语句实现排序法) nums=random.sample(range(1,1000),3) order=None ifnums[0]>nums[1]: ifnums[1]>nums[2]: order=[2,1,0] else: ifnums[0]>nums[2]: order=[1,2,0] else: order=[1,0,2] else: ifnums[0]>nums[2]: order=[2,0,1] else: ifnums[1]>nums[2]: order=[0,2,1] else: order=[0,1,2] foriinorder: print(nums[i]) 实例三(sort排序法) nums=random.sample(range(1000),20) nums.sort(reverse=True)#sort排序法 多多练习各种排序法,不仅限于冒泡排序,分析计算他们的时间复杂度。

BetyOne   BetyOne  131***[email protected]年前(2020-04-08) 点我分享笔记 取消 分享笔记 昵称昵称(必填) 邮箱邮箱(必填) 引用地址引用地址 分类导航 HTML/CSSHTML教程HTML5教程CSS教程CSS3教程Bootstrap3教程Bootstrap4教程Bootstrap5教程FontAwesome教程Foundation教程JavaScriptJavaScript教程HTMLDOM教程jQuery教程AngularJS教程AngularJS2教程Vue.js教程Vue3教程React教程TypeScript教程jQueryUI教程jQueryEasyUI教程Node.js教程AJAX教程JSON教程Echarts教程Highcharts教程Google地图教程服务端Python教程Python2.x教程Linux教程Docker教程Ruby教程Java教程C教程C++教程Perl教程Servlet教程JSP教程Lua教程Rust教程Scala教程Go教程PHP教程Django教程Zookeeper教程设计模式正则表达式Maven教程Verilog教程ASP教程AppML教程VBScript教程数据库SQL教程MySQL教程PostgreSQL教程SQLite教程MongoDB教程Redis教程Memcached教程数据分析Python教程NumPy教程Pandas教程Matplotlib教程Scipy教程R教程Julia教程移动端Android教程Swift教程jQueryMobile教程ionic教程Kotlin教程XML教程XML教程DTD教程XMLDOM教程XSLT教程XPath教程XQuery教程XLink教程XPointer教程XMLSchema教程XSL-FO教程SVG教程ASP.NETASP.NET教程C#教程WebPages教程Razor教程MVC教程WebForms教程WebServiceWebService教程WSDL教程SOAP教程RSS教程RDF教程开发工具Eclipse教程Git教程Svn教程Markdown教程网站建设HTTP教程网站建设指南浏览器信息网站主机教程TCP/IP教程W3C教程网站品质 Advertisement 反馈/建议 在线实例 ·HTML实例 ·CSS实例 ·JavaScript实例 ·Ajax实例 ·jQuery实例 ·XML实例 ·Java实例 字符集&工具 ·HTML字符集设置 ·HTMLASCII字符集 ·JS混淆/加密 ·PNG/JPEG图片压缩 ·HTML拾色器 ·JSON格式化工具 ·随机数生成器 最新更新 · Dockerstats命令 · JavaScripttrun... · JavaScripttanh... · JS获取当前页面... · JavaScript类(c... · JavaScript类(c... · JavaScript类(c... 站点信息 · 意见反馈 · 免责声明 · 关于我们 · 文章归档 关注微信 Copyright©2013-2022菜鸟教程  runoob.comAllRightsReserved.备案号:闽ICP备15012807号-1 微信关注



請為這篇文章評分?