Leetcode PHP题解--D119 704. Binary Search

码农天地 -
Leetcode PHP题解--D119 704. Binary Search
D119 704. Binary Search题目链接

704. Binary Search

题目分析

有序数组的二分查找。

思路

这个不用多说了,很基础的题目了。

用三个标记去记录起始位置、中间位置以及末尾位置。因为是有序的,所以可以通过判断中间位置的大小来每次减少一半待查找元素个数。

最终代码
<?php
class Solution {

    /**
     * @param Integer[] $nums
     * @param Integer $target
     * @return Integer
     */
    function search($nums, $target) {
        $start = 0;
        $end = count($nums);
        do{
            $mid = floor(($end+$start)/2);
            var_dump($start.'-'.$mid.'-'.$end);
            if($nums[$mid] == $target){
                return $mid;
            } 
            if($nums[$mid]<$target){
                $start = $mid+1;
            }
            else{
                $end = $mid-1;
            }
        }while($end>=$start);
        return -1;
    }
}

若觉得本文章对你有用,欢迎用爱发电资助。

特别申明:本文内容来源网络,版权归原作者所有,如有侵权请立即与我们联系(cy198701067573@163.com),我们将及时处理。

php介绍

PHP即“超文本预处理器”,是一种通用开源脚本语言。PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言。PHP独特的语法混合了C、Java、Perl以及 PHP 自创的语法。利于学习,使用广泛,主要适用于Web开发领域。

Tags 标签

leetcodephp

扩展阅读

加个好友,技术交流

1628738909466805.jpg