1. 程式人生 > >【JS】搜尋插入的陣列位置

【JS】搜尋插入的陣列位置

給定一個排序陣列和一個目標值,在陣列中找到目標值,並返回其索引。如果目標值不存在於陣列中,返回它將會被按順序插入的位置。

你可以假設陣列中無重複元素。

示例 1: 輸入: [1,3,5,6], 5 輸出: 2

示例 2: 輸入: [1,3,5,6], 2 輸出: 1

示例 3: 輸入: [1,3,5,6], 0 輸出: 0

解答一:基本上做好大於小於等於的判斷,把資料遍歷一次就可以找出來了。

/**
 * @param date 2018/11/11 晚上
 */
var searchInsert = function(nums, target) {
    var len = nums.length-1;
    if(nums[0]>=target) return 0;
    if(nums[len]==target) return len;
    if(nums[len]<target) return len+1

    var n=0,x=0;;
    for(var i in nums){
        n=parseInt(i)
        if(nums[n]==target){
            return n;
        }
        x=n+1;
        if(nums[n]<target && nums[x]>target){
            return x;
        }
    } 
};