【Python 训练营】N_17 冒泡排序

简介: 【Python 训练营】N_17 冒泡排序

题目

列表L = [3,2,5,6,1,3,8,1,9],冒泡排序实现从小到大排列。

分析

冒泡排序的基本思想是从序列的第一个元素开始,依次比较相邻的两个元素,如果它们的顺序错误就交换它们的位置,直到整个序列有序为止。具体步骤如下:

  1. 比较相邻的两个元素,如果前面的元素大于后面的元素,则交换它们的位置。
  2. 对每一对相邻元素都进行比较和交换,这样一轮下来,最大(或最小)的元素就会“冒泡”到序列的末尾。
  3. 对剩余的元素重复上述步骤,直到整个序列有序。

答案

def bubble_sort(lists):
    len_list=len(lists)
    for i in range(len_list):
        for j in range(len_list-i-1):
            if lists[j]>lists[j+1]:
                lists[j],lists[j+1]=lists[j+1],lists[j]
        # print(lists)
    return lists

L = [3,2,5,6,1,3,8,1,9]
print( bubble_sort(L))



相关文章
|
3月前
|
搜索推荐 Python
利用Python内置函数实现的冒泡排序算法
在上述代码中,`bubble_sort` 函数接受一个列表 `arr` 作为输入。通过两层循环,外层循环控制排序的轮数,内层循环用于比较相邻的元素并进行交换。如果前一个元素大于后一个元素,就将它们交换位置。
155 67
|
6月前
|
搜索推荐 Python
Python基础编程:冒泡排序和选择排序的另一种while循环实现
这篇文章介绍了Python中冒泡排序和选择排序的实现,提供了使用while循环的替代方法,并展示了排序算法的运行结果。
53 2
Python基础编程:冒泡排序和选择排序的另一种while循环实现
|
4月前
|
算法 Python
Python算法编程:冒泡排序、选择排序、快速排序
Python算法编程:冒泡排序、选择排序、快速排序
48 0
|
8月前
|
搜索推荐 算法 Python
Python教程:使用Python实现冒泡排序和快速排序
排序算法根据其实现原理和效率可以分为多种类型,包括冒泡排序、选择排序、插入排序、归并排序、快速排序等。这些算法在不同的场景下具有不同的优劣势,需要根据实际需求选择合适的算法。
83 3
|
8月前
|
Python
【Python 训练营】N_14 文件查找和替换
【Python 训练营】N_14 文件查找和替换
43 2
|
8月前
|
Python
【Python 训练营】N_13 遍历字符串
【Python 训练营】N_13 遍历字符串
57 2
|
8月前
|
Python
【Python 训练营】N_5 斐波那契数列
【Python 训练营】N_5 斐波那契数列
45 2
|
8月前
|
Python
【Python 训练营】N_16 二分法查找
【Python 训练营】N_16 二分法查找
32 1
|
8月前
|
Python
【Python 训练营】N_15 列表元素去重
【Python 训练营】N_15 列表元素去重
47 1
|
8月前
|
Python
【Python 训练营】N_12 打印菱形图案
【Python 训练营】N_12 打印菱形图案
63 1

热门文章

最新文章