二分查找

原创 2016年06月02日 10:16:59
/*二分查找 是针对一个已经进行排序的数组进行查找*/
    /*
        $arr 要查找的数组
        $v 要查找的数
        $start 要查找的开始位置
        $end 要查找的结束位置
    */
    function binary_search($arr, $v, $start, $end){
         if($start > $end){
            return false;
         }else{
             $middle = (int)(($start + $end)/2);
             if($arr[$middle] == $v){
                return $middle + 1;
             }else if($arr[$middle] > $v){
                return binary_search($arr, $v, $start, $middle-1);
             }else{
                return binary_search($arr, $v, $middle+1, $end);
             }        
         }        
    }
    $arr = array(2, 3, 4, 6, 8, 10);
    //获得数组的长度
    $len = count($arr);
    $result = binary_search($arr, 3, 0, $len-1);
    if( $result === false){
        echo "没找到啊<br />";
    }else{
        echo "第" . $result ."项<br />";
    }

二分查找教程

  • 2014年10月11日 22:40
  • 226KB
  • 下载

二分查找

  • 2015年06月11日 21:55
  • 3KB
  • 下载

判断给定的二叉树是否为二分查找树

笔试题: 判断给定的二叉树是否为二分查找树。假设树的每个节点都是以整数为键值,且不同节点值不相同。 返回结果:是二分查找树返回true,否则返回false。 输入: 5 5:2|1 2:...

二分查找解题

  • 2013年11月02日 22:17
  • 1KB
  • 下载

二分查找算法

  • 2012年07月29日 10:25
  • 683KB
  • 下载

二分查找与斐波那契数递归与非递归的时间复杂度与空间复杂度

1、二分查找 非递归 非递归二分查找: 时间复杂度为O(logn) 时间复杂度为O(1) 递归实现 非递归二分查找: 时间复杂度为O(logn) 时间复杂度为O(1) 2、斐波那契数...

二分查找ppt

  • 2013年05月26日 16:55
  • 339KB
  • 下载

C例子:二分查找法

  • 2015年07月27日 21:42
  • 1KB
  • 下载

C语言排序(二)——二分查找

一.实验内容 ①顺序查找算法与二分查找算法比较。 a.定义两个函数分别实现顺序查找和二分查找算法。 b.主函数中用产生随机数的方式随机产生待查数据,通过调用口面编写函数查找指定的数据。 c...

C语言二分查找法

  • 2015年10月25日 14:43
  • 450B
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:二分查找
举报原因:
原因补充:

(最多只允许输入30个字)