首页 > 学院 > 开发设计 > 正文

【lintcode笔记】搜索插入位置

2019-11-08 01:13:18
字体:
来源:转载
供稿:网友

给定一个排序数组和一个目标值,如果在数组中找到目标值则返回索引。如果没有,返回到它将会被按顺序插入的位置。

你可以假设在数组中无重复元素。

样例 [1,3,5,6],5 → 2

[1,3,5,6],2 → 1

[1,3,5,6], 7 → 4

[1,3,5,6],0 → 0

//复杂度O(n)#include <stdio.h>#include <vector>using namespace std;class Solution { /** * param A : an integer sorted array * param target : an integer to be inserted * return : an integer */public: int searchInsert(vector<int> &A, int target) { // write your code here int n = A.size(); if(n == 0) return 0; int i; for(i=0;i<=n-1;i++){ if(A[i] == target){ return i; }else if(A[i] < target){ if(i+1 == n) return i+1; }else{ return i; } } }};
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表