프로그래머스(JavaScript)/Lv0

[프로그래머스 : 코딩테스트 입문] Lv0. 배열의 유사도 (JavaScript)

지미지민 2024. 2. 23. 01:14
문제 설명

두 배열이 얼마나 유사한지 확인해보려고 합니다. 문자열 배열 s1과 s2가 주어질 때 같은 원소의 개수를 return하도록 solution 함수를 완성해주세요.

 

제한사항
  • 1 ≤ s1, s2의 길이 ≤ 100
  • 1 ≤ s1, s2의 원소의 길이 ≤ 10
  • s1과 s2의 원소는 알파벳 소문자로만 이루어져 있습니다
  • s1과 s2는 각각 중복된 원소를 갖지 않습니다.

 

문제풀이

var cnt = 0;

s1과 s2와 겹치는 원소의 개수를 나타내야 하니까 초기값을 0으로 설정했다.

 

s1.filter((v) => {

s1 배열을 필터링하고 있다.


 for(let i=0; i<s2.length; i++){
            if(s2[i] === v){
                cnt++;
            }
        }
    });

s2 배열을 순회하면서 각 원소와 s1 배열의 원소를 비교하였다.

그리고 만약 두 배열의 원소가 일치하면 cnt를 증가시켰다.

 

코드
function solution(s1, s2) {
    var cnt = 0;
    s1.filter((v) => {
        for(let i=0; i<s2.length; i++){
            if(s2[i] === v){
                cnt++;
            }
        }
    });
    return cnt;
}

 

느낀점

배열의 원소와 다른 배열의 원소를 겹치는것을 구하는 건데,

filter() 함수를 사용하면 구할 수 있는 쉬운 문제다.