您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

Python实现快速排序和插入排序算法及自定义排序的示例

2024/2/27 22:54:18发布12次查看
一、快速排序
    快速排序(quicksort)是对冒泡排序的一种改进。由c. a. r. hoare在1962年提出。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。
    快速排序,递归实现
def quick_sort(num_list): 快速排序 if num_list == []: return num_list smalllist = [] biglist = [] middleelement = num_list[0] for i in num_list[1:]: if i num_list[j]: num_list[i],num_list[j] = num_list[j],num_list[i] return num_list
三、自定义排序
利用 sort() 或 sorted() 的 key 即可实现。
示例如下:
def sort_key(obj): sorted_list = [4, 2, 5, 9, 7, 8, 1, 3, 6, 0] return sorted_list.index(obj) if __name__ == '__main__': print sorted(range(10), key=sort_key) # 输出结果如下[4, 2, 5, 9, 7, 8, 1, 3, 6, 0]
# 利用关键字在列表中的索引位置,进行自定义排序
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product