배열에서 중복된 요소를 찾아내는 함수를 작성해보세요.
문제)
주어진 배열에서 중복된 요소를 찾아내어 배열로 반환하는 함수를 작성하세요.
함수는 배열을 받아 중복된 요소들로 이루어진 새로운 배열을 반환해야 합니다.
예를 들어, 다음과 같은 배열이 주어졌다고 가정합니다.
const numbers = [1,2,3,4,2,7,8,1,9];
이 배열에서 중복된 요소는 1,2 입니다. 따라서 함수는 [1,2] 배열을 반환해야 합니다.
함수의 시그니처를 다음과 같아야 합니다.
function findDuplicates(arr) {
}
풀이)
function findDuplicated(arr) {
// 중복된 요소를 저장할 배열 초기화
const duplicates = [];
// 배열을 반복하면서 중복된 요소 찾기
// 이중 반복문을 사용하여 모든 요소 쌍을 확인합니다.
for ( let i = 0; i < arr.length; i++ ) {
for ( let j = i+1; j < arr.length; j++ ) {
// 중복된 요소를 발견하면 duplicates 배열에 추가
// 중복된 요소를 발견하면서, 이미 duplicates 배열에 추가된 요소는 중복으로 처리하지 않도록 체크합니다.
if ( arr[i] === arr[j] && !duplicates.includes(arr[i]) ) {
// 중복된 요소를 발견하면 duplicates 배열에 추가합니다.
duplicates.push(arr[i]);
}
}
}
// 반복이 끝난 후, 중복된 요소로 이루어진 duplicates를 반환합니다.
return duplicates;
}
// 주어진 배열
const numbers = [1,2,3,4,2,7,8,1,9];
// 함수 호출 및 결과 출력
const duplicateNumbers = findDuplicates(numbers);
console.log(duplicateNumbers); //[1,2]
이 코드는 중첩된 반복문을 사용하여
배열에서 중복된 요소를 찾아내는 간단한 알고리즘을 구현한 것입니다.
728x90
반응형
'ETC > 스터디' 카테고리의 다른 글
[알고리즘] ChatGPT 와 함께하는 알고리즘 풀기2 (0) | 2024.01.22 |
---|---|
[알고리즘] ChatGPT 와 함께하는 알고리즘 풀기1 (1) | 2024.01.22 |
[자바스크립트] 원시값과 참조값 이해하기 (0) | 2023.12.06 |
[자바스크립트] 객체 (0) | 2022.01.10 |
[자바스크립트] 공부2 (0) | 2018.05.21 |