[swift] 정렬 함수를 사용하여 중복되는 원소 찾기

배열 내에서 중복되는 원소를 찾는 것은 프로그래밍에서 자주 발생하는 문제입니다. Swift에서는 sort() 함수를 사용하여 원소를 정렬한 후 중복을 확인할 수 있습니다.

아래는 Swift에서 정렬 함수를 사용하여 중복되는 원소를 찾는 예제 코드입니다.

func findDuplicates(arr: [Int]) -> [Int] {
    let sortedArr = arr.sorted()
    var duplicates: [Int] = []
    
    for i in 1..<sortedArr.count {
        if sortedArr[i] == sortedArr[i-1] {
            duplicates.append(sortedArr[i])
        }
    }
    
    return duplicates
}

let numbers = [5, 2, 7, 2, 9, 5, 1, 8, 2, 3]
let duplicates = findDuplicates(arr: numbers)
print("중복되는 원소:", duplicates) // 중복되는 원소: [2, 5]

위의 예제 코드에서는 findDuplicates() 함수를 정의하여 중복되는 원소를 찾습니다. 함수 내에서는 주어진 배열을 정렬한 후, 인접한 원소들을 비교하여 중복된 원소를 찾아 duplicates 배열에 추가합니다. 마지막으로 중복된 원소들을 출력합니다.

이 코드를 실행하면 주어진 배열에서 중복되는 원소인 2와 5를 찾아내는 결과를 얻을 수 있습니다.

위 예제에서도 볼 수 있듯이, Swift의 정렬 함수를 활용하면 중복되는 원소를 손쉽게 찾을 수 있습니다.

참고 자료