![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
面试题精选
文章平均质量分 72
feellow
这个作者很懒,什么都没留下…
展开
-
在一个两段有序的数组中查找
有一个数组,比如{5,7,8,9,1,3,4},分成两段来看,每段都是有序的,而且左边一段的数字总是大于右边的,实现一个比较有效率的查找算法,下面是我的实现,时间复杂度是O(logn)。 算法描述:使用2分法查找,确定查找区间的算法为:if left if x mid findIn(mid, right) else findIn(le原创 2009-09-29 10:05:00 · 935 阅读 · 0 评论 -
查找数组中第K大的数
例如在数组{1, 3, 5, 4, 2, 8, 6}中找出第3大的数应该返回5,实现如下:int FindKth(int arr[], int len, int k){ int prevMax = -1; int currMax = -1; int i, j; if(len > 0 && k < len) { for(i原创 2009-09-28 15:52:00 · 533 阅读 · 0 评论