最近好多天都没有更新,主要是在学习Python数据结构,哎,一言难尽,大一C语言数据结构没有好好学,导致现在几乎从头开始,学习算法的话,希望大家一定好好掌握python语言基础,没有基础的话,可能学习很困难,然后后面的话有很多算法,希望大家不仅仅是理解,更多是完全掌握,这样才能在以后的面试考试中对自己学的代码架构理解程度更高。
补充一点,我在学习数据结构时,又在前面的Python笔记中加了很多笔记,但是因为记录的比较乱,后面我会整理一下发出去,但是具体的时间待定,毕竟补充的也很少,哪里不懂直接私信我就好了。
目录
3. 排序
-
排序:将一组“无序”的记录序列调整为“有序”的记录序列
-
列表排序
-
输入:列表
-
输出:列表
-
-
升序与降序
-
内置排序函数:sort() sorted()
常见的排序算法
冒泡排序 选择排序 插入排序
快速排序 堆排序 归并排序
希尔排序 计数排序 基数排序
3.1 冒泡排序(Buddle Sort)
-
列表每两个相邻的数,如果前面的比后面大,则交换这两个数
-
一趟排序完成后,则无序区减少一个数,有序区减少一个数
-
时间复杂度 O(n2)
# 升序
def bubble_sort(li):
for i in range(len(li) - 1): # 循环遍历 n-1 躺
for j in range(len(li)-i-1):
if li[j] > li[j+1]: