Leetcode【34】:Search insert Position

来源:互联网 发布:黑马人工计划软件 编辑:程序博客网 时间:2024/05/22 13:55

题目:给定一个已经排序的数组和target,查找target。如果找到返回index,如果没找到,返回应该要插入的index。

分析:比上题更简单,一种变换的二分查找。

class Solution{public:int searchInsert(int A[], int n, int target){int left=0,right=n-1;int middle;while(left<=right){middle=(left+right)/2;if(A[middle]==target)return middle;//找到了直接返回,没找到的话就得检查A[middle]和target的大小关系else if(A[middle]>target)right=middle-1;elseleft=middle+1;}if(A[middle]>target)return middle;//没找到但是A[middle]>target,肯定是插入这个位置。elsereturn middle+1;}};


0 0