发布网友
发布时间:2022-04-23 08:57
共2个回答
懂视网
时间:2022-05-11 07:07
具体实现方法如下:
import random def partition(list_object,start,end): random_choice = start #random.choice(range(start,end+1)) #把这里的start改成random()效率会更高些 x = list_object[random_choice] i = start j = end while True: while list_object[i] < x and i < end: i += 1 while list_object[j] > x: j -= 1 if i >= j: break list_object[i],list_object[j] = list_object[j],list_object[i] print list_object #list_object[random_choice] = list_object[j] #list_object[j] = random_choice return j def quick_sort(list_object,start,end): if start < end: temp = partition(list_object,start,end) quick_sort(list_object,start,temp-1) quick_sort(list_object,temp + 1 ,end) a_list = [69,65,90,37,92,6,28,54] quick_sort(a_list,0,7) print a_list
程序测试环境为Python2.7.6
输出结果如下:
[54, 65, 28, 37, 6, 69, 92, 90] [6, 37, 28, 54, 65, 69, 92, 90] [6, 37, 28, 54, 65, 69, 92, 90] [6, 28, 37, 54, 65, 69, 92, 90] [6, 28, 37, 54, 65, 69, 90, 92] [6, 28, 37, 54, 65, 69, 90, 92]
希望本文所述对大家的Python程序设计有所帮助。
热心网友
时间:2022-05-11 04:15
摘要定义一个数字列表,并查找列表中的最大元素。例如:输入 : list1 = [10, 20, 4]输出 : 20 实例 1list1 = [10, 20, 4, 45, 99] list1.sort() print("最大元素为:", list1[-1])以上实例输出结果为:最大元素为: 99咨询记录 · 回答于2021-10-13Python编程查找并输出列表【1,3,2,5,6,10,9,11】中大于5的元素定义一个数字列表,并查找列表中的最大元素。例如:输入 : list1 = [10, 20, 4]输出 : 20 实例 1list1 = [10, 20, 4, 45, 99] list1.sort() print("最大元素为:", list1[-1])以上实例输出结果为:最大元素为: 99实例 2:使用 max() 方法list1 = [10, 20, 1, 45, 99] print("最大元素为:", max(list1))带入数字,输出程序是这样的输出是这个算法