冒泡排序(Bubble Sort)是一种典型的交换排序算法,通过交换数据元素的位置进行排序。

算法原理:从无序序列头部开始,进行两两比较,根据大小交换位置,直到最后将最大(小)的数据元素交换到了无序队列的队尾,从而成为有序序列的一部分;下一次继续这个过程,直到所有数据元素都排好序。算法的核心在于每次通过两两比较交换位置,选出剩余无序序列里最大(小)的数据元素放到队尾。

Python代码1:

#Python算法--冒泡排序1

import random

def main(array):

for i in range(1,len(array)):

for j in range(len(array)-i):

if array[j] > array[j+1]:

array[j],array[j+1]=array[j+1],array[j]

print("冒泡排序数组:",array)

if __name__ == '__main__':

array = []

for i in range(15):

array.append(random.randint(1,1000))

print("随机生成数组:",array)

main(array)

执行效果:

python冒泡排序1

Python代码2:

#Python算法--冒泡排序2

import random

def main(array):

num = len(array)

while num > 0:

for j in range(num-1):

if array[j] > array[j+1]:

array[j],array[j+1]=array[j+1],array[j]

num-=1

print("冒泡排序数组:",array)

if __name__ == '__main__':

array = []

for i in range(15):

array.append(random.randint(1,1000))

print("随机生成数组:",array)

main(array)

代码1和代码2写法略有不同,但原理相同,测试执行效率相同。

python遍历数组冒泡排序_Python算法(一) 数组冒泡排序(难度等级:easy)相关推荐

  1. python 多维数组去重_python多维数组运算-女性时尚流行美容健康娱乐mv-ida网

    自动秒收录 如何加入 (当前页) 购买本站源码 自媒体交流 查询是否收录 查询收录 × 快速加入 只要做上本站的友情链接,并在您站上点击一次,就免人工自动收录!并自动排在本站第一位. 本站已收录286 ...

  2. python类的数组属性_Python学习之数组类型一:

    Python学习之数组类型一: Numpy中的向量与矩阵: 1.创建: 向量.矩阵均由array函数创建,区别在于向量是v=array( [逗号分隔的元素] ), 矩阵是M=array( [[ ]] ...

  3. python numpy数组切片_python中numpy数组切片实验解释

    print(a[0::2]).a[::2].[:,2].[1:,-1:].a[::-1].[ : n].[m : ].[-1].[:-1].[1:]等的含义 文章目录 一维数组(冒号:) 1.一个参数 ...

  4. python二维数组表示_python中二维数组中的数如何表达

    python二维数组如何挑选出一定范围的数值? 比如说有一个二维数组 13.1 13.2 13.3 13.4 15.5 15.0 45.2 22.3 22.3 3 [j for i in a for ...

  5. python 数组打包_Python:打包多字节数组

    这是前一个问题的延续.我收到了更多的信件,但我有点困惑,不知道该怎么做.在 我的目的是获取几个不同长度的字节数组,并通过UDP将它们发送到另一台机器上的进程.UDP我可以做,但是发送字节数组给我带来了 ...

  6. [转载] python 遍历字符串 字符_python 遍历字符串(含汉字)实例详解

    参考链接: Python字符串| rfind python 遍历字符串(含汉字)实例详解 python 遍历字符串(含汉字)实例详解 s = "中国china" for j in ...

  7. python 遍历字符串 字符_python 遍历字符串(含汉字)实例详解

    python 遍历字符串(含汉字)实例详解 python 遍历字符串(含汉字)实例详解 s = "中国china" for j in s: print j 首先一个,你这个'a'是 ...

  8. python什么是数据结构_python算法与数据结构-数据结构介绍(38)

    一.什么是数据结构 数据结构,直白地理解,就是研究数据的存储方式. 我们知道,数据存储只有一个目的,即为了方便后期对数据的再利用,就如同我们使用数组存储 {1,2,3,4,5} 是为了后期取得它们的值 ...

  9. python求数组最大值_Python算法与数据结构--求所有子数组的和的最大值

    Python算法与数据结构--求所有子数组的和的最大值 玄魂工作室秘书 玄魂工作室 昨天 题目:输入一个整形数组,数组里有正数也有负数.数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和. ...

最新文章

  1. 由优劣语言之争引起的思考
  2. 【Runtime Error】打开Matlib7.0运行程序报错的解决办法
  3. 第11章:项目风险管理(2)—章节重点
  4. 一行命令搞定node.js 版本安装、升级与卸载
  5. 如何在Python中删除字符串中的所有反斜杠?
  6. JDK8新特性:函数式接口@FunctionalInterface的使用说明
  7. JS中关于异步的那点事~
  8. HDU2022 海选女主角【最值】
  9. python编程-Python3 网络编程
  10. 面试之手撕BP反向传播
  11. Docker学习之数据管理
  12. 拓端tecdat|互联网热门职位薪资对比报告
  13. android lottie字体json,Android Lottie集成及基本用法
  14. 数字电路基础知识(三) 复位设计-异步复位,同步释放
  15. 2022 新年快乐后端攻城狮
  16. 关于Open函数的newline参数
  17. 计算机图形输入的原理,【计算机图形学】零 · 计算机图形系统概述
  18. Android Crash:Bad notification for startForeground
  19. 【Joy of Cryptography 读书笔记】Chapter 6 伪随机函数(Pseudorandom Function)分组密码(Block Cipher)
  20. 【云栖大会】一场7年后的狂欢,云栖大会除了“飞天”还有什么

热门文章

  1. 消息中间件学习总结(1)——RocketMQ之专访RocketMQ联合创始人:项目思路、技术细节和未来规划
  2. Java基础学习总结(119)——Java8 JVM与Java7 JVM比较
  3. Current在Java里面_在C#中相当于Java System.currentTimeMillis()
  4. mysql 连接字符集_MySQL字符集详解
  5. log4c移植到android,使用Android Studio调用C++ 代码-log4cplus
  6. 设计模式七: 策略(Strategy)
  7. Python重写C语言程序100例--Part6
  8. 创建sdcard.img时,提示permission dennid
  9. 用SonBuddy搭建无线局域网,共享上网。(SONBuddy常见问题,无线组网,共享,上网,笔记本)...
  10. PGA自动管理原理深入分析及性能调整