AcWing 786. 第k个数
原题链接
简单
作者:
小鱼_26
,
2024-07-27 14:58:28
,
所有人可见
,
阅读 2
记录一下题解代码
第k个数
def quick_sort(q, l, r):
if l >= r:
return
i = l - 1
j = r + 1
x = q[(l + r) // 2]
while i < j:
i = i + 1
while q[i] < x:
i += 1
j = j - 1
while q[j] > x:
j -= 1
if i < j:
q[i], q[j] = q[j], q[i]
quick_sort(q, l, j)
quick_sort(q, j + 1, r)
def run():
n = int(input("输入数列元素个数:"))
k = int(input("输入选择的数:"))
q = []
for i in range(n):
element = input(f"输入第{i + 1}个元素:")
q.append(element)
quick_sort(q, 0, n - 1)
print(q[k-1])
if __name__ == "__main__":
run()