关于折半查找的思考
来源:互联网 发布:vmware安装mac 编辑:程序博客网 时间:2024/05/22 05:50
折半查找对于编程人员来说再熟悉不过了~
我们常见的形式大多如下:(假定v数组中的数字按升序排列)
int binsearch(int x,int v[],int n){ int low,high,mid; low=0; high=n-1; while(low<=high) { mid=(low+high)/2; if(x<v[mid]) high=mid-1; else if(x>v[mid]) low=mid+1; else return mid; } return -1;}
这里在while循环中共执行了两次测试,这样效率会很低,不过容易理解,比较直观。那有没有一种方法,在while循环中只让它测试一次呢?答案是肯定的。
int bin2search(int x,int v[],int n){ int low,high,mid; low=0; high=n-1; while(low<high) { mid=(low+high)/2; if(x<=v[mid]) high=mid; else low=mid+1; } return (x==v[low]?low:-1)}
额,上面最后一句少了个分号~,懒得重新写了,csdn的嵌入代码真是不好用~
- 关于折半查找的思考
- 关于折半查找的细节思考
- 数据结构9-关于折半查找的实例
- 关于ACM折半查找
- 关于折半查找算法
- 关于折半查找
- 简单的折半查找
- 经典的折半查找
- 折半查找的实现
- 折半查找的实现
- 泛型化的折半查找
- 递归的折半查找
- 折半查找的优势
- 数组的折半查找
- 简单的折半查找
- 折半查找的实现
- 折半查找的改进
- 关于用折半查找来定位目标值的区间
- 音频文件操作1(系统铃声)
- 酷站收藏
- 10453 Make Palindrome (dp)
- 标准 BT656 并行 数据结构 详解
- keyStore和truststore区别
- 关于折半查找的思考
- flash player所有版本下载地址
- VS2008 C++ 调用MATLAB 2010a 生成的DLL
- Summary for SourceInsight
- 查找一个字符串里没有出现的字母
- Exception in thread "main" brut.androlib.err.UndefinedResObject: resource spec: 0x01030200
- CC2530外部中断相关
- flash策略文件及socket安全策略
- 使用UDP发送广播报