Leetcode 35 -- 搜索插入位置

题目链接:Leetcode 35

大致描述一下题目:

给定一个排序数组和一个目标值,返回该值在数组中的位置,如果数组中没有该值,则返回顺序插入的位置。


解题思路:

很简单,就是遍历数组,判断是否相等,还有前一个元素是否小于并且后一个元素是否大于。注意好边界值,即首元素和最后一个元素与目标值的比较。


代码如下:

/*******************************************************************************
Copyright © 2018-20xx Qiao Chuncheng, All Rights Reserved.
File name:		035[搜索插入位置].cpp
Author:			Qiao Chuncheng
Version:		v1.0
Date:			2018-04-16
*******************************************************************************/

class Solution {
public:
    int searchInsert(vector<int>& nums, int target) {
        for (int i = 0; i < nums.size(); i++)
		{
			if (nums[i] == target)
				return i;

			if (nums[i]<target && nums[i + 1]>target)
			{
				return i + 1;
			}
		}
		if (nums[0] > target)
			return 0;

		if (nums[nums.size() - 1] < target)
			return nums.size();
		return -1;
    }
};

猜你喜欢

转载自blog.csdn.net/u010281829/article/details/80104878