首页 > 解决方案 > 关于 LeetCode 77 (javascript) 的未定义错误

问题描述

问题:编写一个有效的算法,在 mxn 矩阵中搜索一个值。该矩阵具有以下属性: 每行中的整数从左到右排序。每行的第一个整数大于前一行的最后一个整数。示例输入:matrix = [[1,3,5,7],[10,11,16,20],[23,30,34,60]], target = 3 输出:true 我的解决方案:

var searchMatrix = function(matrix, target) {
    //first,decide target in which row
    //insert search in this row
    let row=matrix.length,col=matrix[0].length
    let arr=null
    for(let i=0;i<row;i++){
        if(target<=matrix[i][col-1]&&target>=matrix[i][0]){
            arr=matrix[i]
        }
    }
    if(arr==null) return false
    return insection(arr,target)
    function insection(nums,tar){
        let len=Math.ceil(nums.length/2)
        if(nums[len]==tar){
            return true
        }
        else if(nums[len]>tar){
            insection(nums.slice(0,len),tar)
        }else if(nums[len]<tar){
            insection(nums.slice(len+1),tar)
        }else{
            return false
        }
    }
};

不知道为什么我的解决方案返回“未定义”?

标签: javascriptalgorithm

解决方案


推荐阅读