题解 | 明明的随机数

import sys

def quick_sort(nums):
    if len(nums) <= 1:
        return nums
    
    par = nums[0]

    left = [x for x in nums if x < par]
    mid  = par
    right = [x for x in nums if x > par]
    return quick_sort(left) + [mid] + quick_sort(right)

len_nums = int(sys.stdin.readline().strip("\n"))
nums = []
for i in range(len_nums):
    nums.append(int(sys.stdin.readline().strip("\n")))

nums = quick_sort(nums)
for n in nums:
    print(n)

使用set的话每输入一个元素都需要遍历一次列表。可以考虑排序的时候顺便做了去重。

全部评论

相关推荐

07-23 14:04
东北大学 C++
既然这样,为什么不点击就送呢
牛马88号:因为你合适。但有很多笔试就挂了、通过了再排序的
点赞 评论 收藏
分享
熬夜冠军🏆:和你情况差不多,你这个HR算敞亮了,直白告诉你了,不浪费你时间,我的那个还跟我说没法说,只能等。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务