Leetcode(35) 搜尋插入位置
阿新 • • 發佈:2018-11-27
題目描述
給定一個排序陣列和一個目標值,在陣列中找到目標值,並返回其索引。如果目標值不存在於陣列中,返回它將會被按順序插入的位置。
你可以假設陣列中無重複元素。
示例 1:
輸入: [1,3,5,6], 5
輸出: 2
示例 2:
輸入: [1,3,5,6], 2
輸出: 1
示例 3:
輸入: [1,3,5,6], 7
輸出: 4
示例 4:
輸入: [1,3,5,6], 0
輸出: 0
解題思路
最近這幾道簡單難度的題,思路基本都差不多,最簡單的方法是就是使用兩個指標,一個是原始陣列的位置指標,一個是目標的位置指標,在這道題中,需要尋找是否有重複的數字,則在迴圈中,判斷是否相同即可,如相同,直接返回該位置,如果不相同的話,利用另外一個指標來進行計數,記小於目標數的個數,返回個數即可
程式碼如下
class Solution { public: int searchInsert(vector<int>& nums, int target) { int j=0; for(int i=0;i<nums.size();i++) { if(nums[i]==target) { return i; } if(nums[i]<target) { j++; } } return j; } };