首页 > 其他 > 详细

顺序表查找的优化

时间:2016-03-21 07:05:35      阅读:187      评论:0      收藏:0      [点我收藏+]

来源于书本,这个小技巧还是记录一下,其实它所表达的意思就是,for循环和while循环的一点微妙区别。
在for循环中,比如:

for(i=1;i<=n;i++)
{
    if(a[i]==key)
    return i;
}

比较、自增、加上边界的判定,一共需3步,而while循环,则只需要两步,减去了边界判定的一步。

while(a[i]!=key)
{
    i--;
}
int search(int a[],int n,int key)
{
    int i;
    a[0]=key;/*设置a[0]为关键字值,称为“哨兵"*/
    i=n;/*循环从尾部开始*/
    while(a[i]!=key)
    {
        i--;
    }
    return i;
}

 

顺序表查找的优化

原文:http://www.cnblogs.com/tinaluo/p/5300467.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!