二分查找时间复杂度的计算(转)
2011-05-31 22:10
369 查看
二分查找的基本思想是将n个元素分成大致相等的两部分,去a[n/2]与x做比较,如果x=a[n/2],则找到x,算法中止;如果x<a[n/2],则只要在数组a的左半部分继续搜索x,如果x>a[n/2],则只要在数组a的右半部搜索x.
时间复杂度无非就是while循环的次数!
总共有n个元素,
渐渐跟下去就是n,n/2,n/4,....n/2^k,其中k就是循环的次数
由于你n/2^k取整后>=1
即令n/2^k=1
可得k=log2n,(是以2为底,n的对数)
所以时间复杂度可以表示O()=O(logn)
时间复杂度无非就是while循环的次数!
总共有n个元素,
渐渐跟下去就是n,n/2,n/4,....n/2^k,其中k就是循环的次数
由于你n/2^k取整后>=1
即令n/2^k=1
可得k=log2n,(是以2为底,n的对数)
所以时间复杂度可以表示O()=O(logn)
相关文章推荐
- 二分查找时间复杂度的计算
- 二分查找时间复杂度的计算
- 二分查找时间复杂度的计算(转)
- C++ 计算时间复杂度--斐波那契 --二分查找
- 二分查找时间复杂度的计算
- 数据结构&算法(二)_算法基础之前传(递归、时间复杂度、空间复杂度、二分查找)
- 二分查找的时间复杂度计算
- java 二分查找计算时间复杂度
- 二分查找以及二分查找的时间复杂度
- 以斐波那契数列和二分查找为例——探究时间复杂度 和 空间复杂度
- 关于使用二分思想算法的时间复杂度的计算
- 快速排序和二分查找时间复杂度详解
- 二分查找时间复杂度推导
- 二分查找与斐波那契数递归与非递归的时间复杂度与空间复杂度
- 彻底轻松搞定顺序存储结构元素的二分查找的时间复杂度优势以及如何算时间复杂度
- 二分查找时间复杂度计算与分析
- 分析时间复杂度&空间复杂度,以二分查找和斐波那契数的递归和非递归算法为例
- 【每日一题】查找一个字符串中第一个只出现两次的字符。要求时间复杂度为O(N),空间复杂度为O(1)
- 如何计算时间复杂度
- 如何计算时间复杂度