【Leetcode】35. Search Insert Position

题目

Given a sorted array and a target value, return the index if the target is found. If not, return the index where it would be if it were inserted in order.

You may assume no duplicates in the array.

给定一个从小到大排序的数组和一个target,如果数组中存在target返回其下标,如果不存在,返回按照顺序target应在的下标,假定没有重复数据

class Solution {
public:
	int searchInsert(vector<int>& nums, int target) {
		//如果target与vector中某元素相等,返回改元素下标
		//遍历vector,与target比较
		for(int i = 0; i<nums.size(); i++){
			if(nums[i] == target){
				return i;
			}
		}
		//如果target不在此vector中,返回应该在的位置
		//遍历vector,找到第一个比target大的数字,返回他的下标
		
		for(int i = 0; i<nums.size(); i++){
			if(nums[i] > target){
				return i;
			}
			//如果i已经是到最后一个了还没有返回,那就说明最大,返回i+1
			if(i == nums.size()-1){
				return i+1;
			}
		}
	}
};


猜你喜欢

转载自blog.csdn.net/zerlina98/article/details/79782267