美文网首页
2.3.1 数组

2.3.1 数组

作者: Ching_Lee | 来源:发表于2018-05-24 20:27 被阅读0次

    面试题3:数组中重复的数字

     function duplicate(numbers, duplication)
        {
            let map=new Map();
            for(let i=0;i<numbers.length;i++){
                if(!map.has(numbers[i]))
                {
                    map.set(numbers[i],1);
                }
                else{
                    map.set(numbers[i],map.get(numbers[i])+1);
                }
            }
            for(let i=0;i<numbers.length;i++){
                if(map.get(numbers[i])>1){
                    duplication.push(numbers[i]);
                    return true;
                }
            }
            return false;
        }
    

    面试题4:二维数组中的查找

    在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。

     /*主要思想,找最右上角的数字和target比较,如果大于target,
        抛弃这一列,col--;如果小于target,抛弃这一行,col++*/
        function Find(target, array) {
            // write code here
            let row = 0;
            let col = array[0].length - 1;
            while (row < array.length && col >= 0) {
                if (array[row][col] === target)
                    return true;
                else if (array[row][col] > target) {
                    col--;
                }
                else {
                    row++;
                }
            }
            return false;
        }
    

    相关文章

      网友评论

          本文标题:2.3.1 数组

          本文链接:https://www.haomeiwen.com/subject/oqgzrftx.html