> For the complete documentation index, see [llms.txt](https://jenhsuan.gitbook.io/algorithm/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://jenhsuan.gitbook.io/algorithm/leetcode/35.-search-insert-position-easy.md).

# 35. Search Insert Position (Easy)

## 1.問題&#x20;

* 給予一個sorted list以及target value, 回傳在陣列的位置或是他應該插入的位置

![](/files/-LHNyz23PAYnG0Bv2mb0)

## 2.想法&#x20;

* Binary search

## 3.程式碼&#x20;

```
class Solution {
public:
    int searchInsert(vector<int>& nums, int target) {
        int start = 0, end = nums.size()-1;
        if (nums[end] < target) {
            return end + 1;
        }
        if (nums[start] > target) {
            return start;
        }
        while (start <= end) {
            int mid = start + (end - start) /2;
            if (nums[mid] == target ||
                (nums[mid] > target && nums[mid - 1] < target)) {
                return mid;
            }
            if (nums[mid] < target && nums[mid + 1] > target) {
                return mid + 1;
            }
            if (nums[mid] > target) {
                end = mid - 1;
            } else {
                start = mid + 1;
            }
        }
    }
};
```

## 4.Performance

![](/files/-LHNymCXu4AfXD_Q8iX4)
