[swift] 집합의 정렬

집합(Set)은 중복되지 않는 값들의 모임으로, 원소들은 순서에 의미가 없다. 하지만 때로는 집합의 원소들을 정렬하여 사용해야 하는 경우가 있을 수 있다. 이 글에서는 Swift를 사용하여 집합의 원소들을 정렬하는 방법에 대해 다루겠다.

정렬된 집합 생성하기

Swift에서 Set은 정렬된 원소를 가지고 있지 않지만, sorted() 메소드를 사용하여 정렬된 배열을 얻을 수 있다.

let set: Set = [2, 5, 1, 3, 4]
let sortedArray = set.sorted()
print(sortedArray) // [1, 2, 3, 4, 5]

커스텀 정렬 기준 사용하기

만약 집합의 원소가 복잡한 객체일 경우, sorted(by:) 메소드를 사용하여 커스텀 정렬 기준을 제공할 수 있다.

struct Person {
    let name: String
    let age: Int
}

let people: Set = [Person(name: "Alice", age: 25), Person(name: "Bob", age: 30), Person(name: "Charlie", age: 20)]
let sortedPeople = people.sorted { $0.age < $1.age }
print(sortedPeople) // [Person(name: "Charlie", age: 20), Person(name: "Alice", age: 25), Person(name: "Bob", age: 30)]

마무리

집합의 원소를 정렬하여 사용해야 하는 경우, sorted() 메소드를 사용하여 간단하게 정렬된 배열을 얻을 수 있다. 또한 복잡한 객체를 다룰 때에는 sorted(by:) 메소드를 사용하여 커스텀 정렬 기준을 제공할 수 있다. 이러한 유연성으로 Swift의 집합을 효과적으로 다룰 수 있다.

참고: Swift 공식 문서 - Set