给定无序整数序列,求其中第K大的数,例如{45,67,33,21},第2大数为45
输入描述:
输入第一行为整数序列,数字用空格分隔,如:45 67 33 21
输入第二行一个整数K,K在数组长度范围内,如:2
输出描述:
输出第K大的数,本例为第2大数:45
1 import heapq 2 num = map(int,input().split()) 3 k = int(input()) 4 largeK = heapq.nlargest(k,num) 5 #x = sorted(num)[-k] 6 x = largeK[-1] 7 print(x)
题型:排序
思路:使用堆(heapq模块)