在移位数组中查找数
摘要:        
题目描述:一个数组是由一个递减数列左移若干位形成的,比如{4,3,2,1,6,5}是由{6,5,4,3,2,1}左移两位形成的,在这种数组中查找某一个数。解析:很多解法的时间复杂度都停留在O(n),下面的解法 仍为二分查找法 只不过 对应题目做了相应的改进 时间复杂度为O(log2n)1.思路:(画图实际上更直观看出来思路,读者试着自己画出图来对应分析)设数组a[start]~a[end],mid = (start + end) / 2 在进行二叉查找时,待查找数肯定会在变量mid的两侧,其中mid的取值主要有以下几情况,第一种为a[mid] < a[start] 说明此时mid对应的数    阅读全文
        posted @ 2012-09-19 16:13 as_ 阅读(945) 评论(0) 推荐(0)
 
                    
                 
 浙公网安备 33010602011771号
浙公网安备 33010602011771号