题目: 输入n个整数,找出其中最小的K个数.例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,. 思路: 这个是O(nlogk)时间复杂度的思路:用一个容器来保存最先的k个数,这样每次来一个数时,用这个数和容器中k个数中的最大值进行比较:如果比最大值大,则舍弃:比最大值小,则删除最大值,并将该值加入容器.那么问题就是应该选用什么样的容器? 容器需要做3件事:一是在k个数中找最大值,二是删除最大值,三是插入新数.如果用二叉树来实现这个容器,则可以在O(logk)的