欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

python 气泡排序

最编程 2024-04-17 13:05:18
...
武汉源创会回归,4月20聊聊大模型”

冒泡法排序

原理:一次比较相邻的两个元素,如果前一个元素比第二个元素大,则交换位置;没一趟将一个数归位。

例如:列表nums = [3,5,2,1,9],从小到大相邻两位一一比较

第一趟:

  • 第一次比较:3,5,2,1,9
  • 第二次比较:3,2,5,1,9
  • 第三次比较:3,2,1,5,9
  • 第四次比较:3,2,1,5,9

第二趟:

 

  • 第一次比较:2,3,1,5,9
  • 第二次比较:2,1,3,5,9
  • 第三次比较:2,1,3,5,9
  • 第四次比较:2,1,3,5,9

第三趟:

  • 第一次比较:1,2,3,5,9
  • 第二次比较:1,2,3,5,9
  • 第三次比较:1,2,3,5,9
  • 第四次比较:1,2,3,5,9

......

 

代码如下:

 1 #!/usr/bin/env python
 2 # -*- coding: utf-8 -*-
 3 
 4 # author: dcl
 5 # date: 2018/1/30
 6 
 7 # 冒泡法排序
 8 
 9 
10 def bubbleSort(nums):
11     for i in range(len(nums) - 1):
12         for j in range(len(nums) - i - 1):
13             if nums[j] > nums[j + 1]:
14                 nums[j], nums[j + 1] = nums[j + 1], nums[j]
15 
16     return nums
17 
18 
19 nums = [3, 5, 2, 1, 9]
20 print(bubbleSort(nums))