剑指Offer面试题30(java版):最小的k个数
题目:输入n个整数,找出其中最小的k个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4
这道题最简单的思路莫过于把输入的n个整数排序,排序之后位于最前面的k个数就是最小的k个数。这种思路的时间复杂度是O(nlogn),面试官会提示我们还有更快的算法。
解法一:O(n)的算法,只有当我们可以修改输入的数组时可用
从上一题中我们可以得到启发,我们
转载
2017-07-28 16:28:10 ·
454 阅读 ·
0 评论