16.最小的k个数

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


代码:


参考代码


解题思路:定义一个大小为k的容器存储k个最小值。每次从input中取出数据进行比对,如果数据源data 比 容器中的最大值还小,那么删除容器中的最大值,然后将data中的值存进去。此种方法适合数据量较大,不能一次性存储到内存,我们借用辅助控件,一次读取一个数值进行比对,另一个优点是我们没有对源数据进行修改。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容