题目描述:给定一个排序数组和一个目标值,在数组中找到目标值并返回其索引。如果数组中不存在目标值,则返回将按顺序插入的位置。您可以假设数组中没有重复元素。示例1:输入:[1,3,5,6],5输出:2示例2:输入:[1,3,5,6],2输出:1示例3:输入:[1,3,5,6],7Output:4例子4:Input:[1,3,5,6],0Output:0来源:LeetCode链接:https://leetcode-cn.com/probl...思路:Avariantofbinarysearch,正常的二分查找,如果没有找到,返回-1,这道题可以返回二分查找的左边界,也就是插入地址。代码:classSolution{/***@paramInteger[]$nums*@paramInteger$target*@returnInteger*/functionsearchInsert($nums,$target){$left=0;$right=count($nums);while($left<$right){$mid=floor($left+($right-$left)/2);如果($target<$nums[$mid]){$right=$mid;}elseif($target>$nums[$mid]){$left=$mid+1;}else{返回$mid;}}返回$左;}}执行时间:8毫秒,内存消耗:15.3MB
