머리말
공식 문서 링크
글을 쓰게 된 이유
1. 알고리즘 문제에서 사용하게 된 집합(Set)의 메서드
이번에 푼 알고리즘 문제에서 집합에 관련한 문제가 나왔는데, 컬렉션 타입 중에 집합은 거의 사용해 본 적이 없어서 이번에 정리를 하게 되었다.
2. 알고리즘 링크
코딩테스트 연습 - [1차] 뉴스 클러스터링 | 프로그래머스 스쿨
집합의 연산 동작
연산 동작의 특징은 아래와 같이 메서드와 파라미터를 이용해 구하며, 새로운 집합을 생성하는 것이다.
1. 교집합(Intersection)
두 집합의 공통된 값을 가지는 집합
2. 대칭차집합(Symmetric Difference)
두 집합을 더하되, 교집합을 제외한 집합
3. 합집합(Union)
두 집합의 모든 값을 더한 집합(요소가 겹칠 경우 제외)
4. 차집합(Subtracting)
특정 집합에서 다른 집합과의 교집합을 제외한 집합
예시 코드
(공식 문서 참고)
let oddDigits: Set = [1, 3, 5, 7, 9]
let evenDigits: Set = [0, 2, 4, 6, 8]
let singleDigitPrimeNumbers: Set = [2, 3, 5, 7]
oddDigits.union(evenDigits).sorted()
// [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
oddDigits.intersection(evenDigits).sorted()
// []
oddDigits.subtracting(singleDigitPrimeNumbers).sorted()
// [1, 9]
oddDigits.symmetricDifference(singleDigitPrimeNumbers).sorted()
// [1, 2, 9]
'iOS > Swift' 카테고리의 다른 글
[Swift] 번호 기호(#)로 Raw String 사용하기 (0) | 2023.07.23 |
---|---|
[Swift] 매개변수 vs 전달인자 (feat. 아규먼트 레이블) (1) | 2023.07.19 |
[Swift] 프로퍼티(Properties) (0) | 2023.05.21 |
클래스와 구조체 차이 (0) | 2023.05.18 |
[Swift] 구조체와 클래스(Structures and Classes) (0) | 2023.05.17 |
댓글