LeetCode——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.

Here are few examples.
[1,3,5,6], 5 → 2
[1,3,5,6], 2 → 1
[1,3,5,6], 7 → 4

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

给定一个排好序的数组和一个目标值,假设在数组中找到这个值则返回其索引,未找到的话,返回其应该插入的位置的索引。

你能够如果数组中没有反复元素。

思路就是遍历,并用当前值与目标值比較。第一次循环看是否有与目标值同样的元素,第二次循环找插入位置。

	public static int searchInsert(int[] A, int target) {
		int index = -1;
		for(int i=0;i<A.length;i++){
			if(A[i] == target)
				return i;
		}
		for(int i=0;i<A.length;i++){
			if(A[0] > target)
				return 0;
			else if(A[A.length -1] < target)
				return A.length;
			else if(A[i] < target && A[i+1] > target)
				return i+1;
		}
		return index;
	}



原文地址:https://www.cnblogs.com/gcczhongduan/p/5058749.html