美文网首页【python公司校招题】
【python滴滴出行】整数无序数组求第K大数?

【python滴滴出行】整数无序数组求第K大数?

作者: 阿牛02 | 来源:发表于2019-08-08 15:44 被阅读0次

题目:给定无序整数序列,求其中第K大的数,例如{45,67,33,21},第2大数为45。

输入描述:

输入第一行为整数序列,数字用空格分隔,如:45 67 33 21

输入第二行一个整数K,K在数组长度范围内,如:2

输出描述:

输出第K大的数,本例为第2大数:45

code:

def findSmallKnum(arr, k):

    for i in range(k):

        for j in range(i + 1, len(arr)):

            if arr[i] < arr[j]:

                arr[i], arr[j] = arr[j], arr[i]

    return arr[k-1]

if __name__ == "__main__":

    arr = list(map(int, input().split()))#[4, 3, 6, 7,1, 3]

    K = int(input())

    print(findSmallKnum(arr, K))

相关文章

网友评论

    本文标题:【python滴滴出行】整数无序数组求第K大数?

    本文链接:https://www.haomeiwen.com/subject/ktpxjctx.html