◾레벨
코딩테스트 연습 > 코딩테스트 입문 > 배열의 유사도
◾문제
https://school.programmers.co.kr/learn/courses/30/lessons/120903?language=javascript
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
두 배열이 얼마나 유사한지 확인해보려고 합니다. 문자열 배열 s1과 s2가 주어질 때 같은 원소의 개수를 return하도록 solution 함수를 완성해주세요.
◾풀이
처음에는 이중 for문으로 각 배열의 항목을 한 개씩 비교해서(동일한지) answer에 합을 구할까? 도 생각하였지만,
배열에 있는 메서드를 사용해서 더 간편히 구할 수는 없을까?? 분명 Array 배열에 여러가지 메서드가 있을텐데 이 중 활용할 수 있는 것이 있을것이다! 라고 생각하다가 includes()메서드가 생각이 났다.
💡Array의 includes() 함수
배열의 값이 존재하는지 true또는 false로 boolean값을 반환해준다.
ex) const fruits= ['apple', 'banana', 'mango'];
console.log(fruits.includes('banana')); // true
이중 for문을 쓰지는 않았지만, 다른 사람의 풀이를 보니 filter() 메서드를 활용하면 코드를 더 간결하게 작성할 수 있는 듯 했다. 다음에는 filter도 활용한 풀이를 작성해보아야겠다.
function solution(s1, s2) {
var answer = 0;
for(const value2 of s2){
if(s1.includes(value2)){
answer++;
}
}
return answer;
}
'Algorithm > programmers' 카테고리의 다른 글
[programmers/js] 배열 원소의 길이 3가지 풀이 (2) | 2025.01.26 |
---|---|
[programmers/js] 짝수의 합 풀이 (1) | 2025.01.19 |