LCP 01. 猜数字 | 刷题打卡

189 阅读1分钟

本文正在参与掘金团队号上线活动,点击 查看大厂春招职位

一、题目描述

本题来自LCP 01. 猜数字 lcp???

image.png

二、思路分析

题说的那么麻烦,其实就是比较两个个数相同的数组是否每一项都相等,返回相等数值的个数。

三、AC代码

1.一层循环 两个变量 遍历 匹配

var game = function(guess, answer) {
    let num = 0;
    for(let i=0,j=0;i<guess.length,j<answer.length; i++,j++){
        if(guess[i] === answer[j]) num++;
    }
    return num;
};

2.一层循环 一个变量 遍历 匹配

var game = function(guess, answer) {
    let count = 0;
    for(let i=0; i<answer.length; i++) {
        if (guess[i] === answer[i]) num++;
    }
    return num;
};

3.两层循环 两个变量 山炮想法 也不是很山炮~

var game = function(guess, answer) {
    let num = 0;
    for(let i=0; i<answer.length; i++){
        for(let j=0; j<guess.length; j++){
            if(guess[j] == answer[i] && j == i){
                num++;
            }
        }
    }
    return num;
};

4.filter()

var game = function(guess, answer) {
    return guess.filter((val,index)=>{
        return val === answer[index]
    }).length;
};

这个洋气点儿

四、总结

啊 不想做题 想吃麻辣烫