Python 的排序和选择操作算是编程里绕不过去的一关了,chapter_12_排序和选择.zip
这个资源就挺适合用来打基础的。
排序算法的全家桶都有,比如耳熟能详的冒泡排序
、插入排序
、快速排序
,每种都讲得比较细。像快速排序这种效率高的,适合大数据量;而插入排序就适合小而精的场景,讲得也还蛮清楚。
选择操作也有提,像max()
、min()
这些常用函数没少出现,还有heapq
模块的nlargest()
和nsmallest()
,前几大(小)个元素挺方便,效率也不错。
讲到排序实现,除了基本方法,资源里还了Timsort
,这是 Python 默认用的混合排序算法,兼顾了稳定性和效率,基本不用你自己操心,了解原理更容易写出靠谱的代码。
嗯,还有个点你得注意:sorted()
和list.sort()
长得像但行为不一样,前者返回新列表,后者原地改,你要按场景选。
这个资源内容还蛮系统的,适合你想从头搞懂 Python 里的排序和选择,尤其是对新手比较友好。如果你打算优化数据部分的性能,可以重点看看。