2013搜狗搜索广告事业部面试问的一个问题,觉得很受益
来源:互联网 发布:网络图片搞笑有没有 编辑:程序博客网 时间:2024/04/30 13:35
题目:对一个升序的数组,进行指定的值搜索,返回该值的索引
int
BinSearch(SeqList *R,
int
n , KeyType K)
{
//在有序表R[0..n-1]中进行二分查找,成功时返回结点的位置,失败时返回-1
int
low=0,high=n-1,mid;
//置当前查找区间上、下界的初值
if
(R[low].key==K)
return
low ;
if
(R[high].key==k)
return
high;
while
(low<=high)
{
//当前查找区间R[low..high]非空
mid=low+((high-low)/2);
//使用 (low + high) / 2 会有整数溢出的问题
//(问题会出现在当low + high的结果大于表达式结果类型所能表示的最大值时,
//这样,产生溢出后再/2是不会产生正确结果的,而low+((high-low)/2)不存在这个问题
if
(R[mid].key==K)
return
mid;
//查找成功返回
if
(R[mid].key>K)
high=mid-1;
//继续在R[low..mid-1]中查找
else
low=mid+1;
//继续在R[mid+1..high]中查找
}
if
(low>high)
return
-1;
//当low>high时表示查找区间为空,查找失败
}
//BinSeareh
0 0
- 2013搜狗搜索广告事业部面试问的一个问题,觉得很受益
- 面试问的比较多的一个基础问题
- 面试经常问的一个问题:final、finalize、finally
- 2015/03/31 百度广告事业部面试基础问答
- 面试一定要问的问题
- 面试常问的问题
- 面试时常问的问题
- 面试需要问的问题
- 面试常问的问题
- **科技面试问的问题
- 面试常问的问题
- 面试问到的问题
- 面试问到的问题
- 面试常问的问题
- 问一个棘手的问题!!
- 问一个openshift的问题
- web面试常问的一个问题 选用ibatis和hibernate的区别
- 程序员面试可能会问到的问题
- weblogic上部署应用程序时,web.xml文件编码错误
- u-boot移植出现的问题
- ngx_http_dav_ext_module.c
- Markdown: Basics (快速入门)
- flex和java实体类的映射关系(blazeds方式通信)
- 2013搜狗搜索广告事业部面试问的一个问题,觉得很受益
- rails字符转准换成对象及方法
- 输入10个数字将其按从小到大排序输出
- javascript思维导图
- LBP
- django.core.exceptions.ImproperlyConfigured: Neither Pillow nor PIL could be imported: No module nam
- 使用vim的find命令快速打开文件
- “高教社杯”第三届福建省大学生程序设计竞赛
- 在linux中安装中文输入法