leetcode刷题笔记25

面试题40. 最小的k个数

输入整数数组 arr ,找出其中最小的 k 个数。例如,输入4、5、1、6、2、7、3、8这8个数字,则最小的4个数字是1、2、3、4。

class Solution:
    def getLeastNumbers(self, arr: List[int], k: int) -> List[int]:
    	if not arr:
    		return None
    	nums = [0]*10000
    	for i in arr:
    		nums[i] += 1
    	res = []
    	i = 0
    	while len(res)<k:
      		if nums[i]>0:
    			for _ in range(nums[i]):
    				res.append(i)
       		i += 1
    	return res[:k]

    	
发布了1 篇原创文章 · 获赞 2 · 访问量 265
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 游动-白 设计师: 上身试试

分享到微信朋友圈

×

扫一扫,手机浏览