728x90
반응형

Set 4

[자료구조] 집합

1. 집합(Set)특정 조건에 맞는 원소들의 모임2. 교집합두 집합이 공통으로 포함하는 원소로 이루어진 집합A ∩ B = {x | x ∈ A and x ∈ B}3. 합집합어느 하나에라도 속하는 원소들을 모두 모은 집합A∪B = {x | x ∈ A or x ∈ B}4. 차집합A or B에만 속하는 원소들의 집합A - B = {x | x ∈ A and x !∈ B}5. 여집합전체 집합(U) 중 A의 원소가 아닌 것들의 집합A^c = {x | x ∈ U and x !∈ A}6. 코드HashSet set = new HashSet();set.add(1);set.add(1); // set은 중복 허용하지 않기 때문에 1은 한번만 삽입set.add(2);set.add(3);set.remove(1); // 1이라는 데..

CS/자료구조 2024.08.14

[Algorithm] 백준 1181번 단어 정렬 (Python)

https://www.acmicpc.net/problem/1181 1181번: 단어 정렬 첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다. www.acmicpc.net 문제 알파벳 소문자로 이루어진 N개의 단어가 들어오면 아래와 같은 조건에 따라 정렬하는 프로그램을 작성하시오. 길이가 짧은 것부터 길이가 같으면 사전 순으로 단, 중복된 단어는 하나만 남기고 제거해야 한다. 입력 첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의..

Algorithm/Baekjoon 2023.02.17

[Algorithm] 백준 11723번 집합 (Python)

https://www.acmicpc.net/problem/11723 11723번: 집합 첫째 줄에 수행해야 하는 연산의 수 M (1 ≤ M ≤ 3,000,000)이 주어진다. 둘째 줄부터 M개의 줄에 수행해야 하는 연산이 한 줄에 하나씩 주어진다. www.acmicpc.net 문제 비어있는 공집합 S가 주어졌을 때, 아래 연산을 수행하는 프로그램을 작성하시오. add x: S에 x를 추가한다. (1 ≤ x ≤ 20) S에 x가 이미 있는 경우에는 연산을 무시한다. remove x: S에서 x를 제거한다. (1 ≤ x ≤ 20) S에 x가 없는 경우에는 연산을 무시한다. check x: S에 x가 있으면 1을, 없으면 0을 출력한다. (1 ≤ x ≤ 20) toggle x: S에 x가 있으면 x를 제거하고..

Algorithm/Baekjoon 2023.02.09

[Python] set() 함수 : 집합

set() 함수 set()은 집합에 관련된 것을 쉽게 처리하기 위해 만든 자료형이다. set() 키워드를 그대로 사용하거나 중괄호({ })를 사용하여 표현 가능하다. 중괄호 사용 시 중괄호 자체만으로는 dict를 선언하는 것이므로 주의해야 한다. set()은 리스트, 문자열 모두 입력해 만들 수 있다. 중복을 허용하지 않고 순서가 없다. 순서가 없어 인덱싱으로 값을 얻을 수 없다. 따라서 인덱싱에 접근하고자 할 때는 리스트나 튜플로 변환한 후 접근해야 한다. 특히 교집합, 합집합, 차집합을 구할 때 유용하게 사용할 수 있다. s1 = set([1,2,3]) s1 # {1, 2, 3} s2 = set("Hello") s2 # {'e', 'H', 'l', 'o'} 교집합, 합집합, 차집합 1. 교집합 "&"..

Python 2023.02.08
728x90
반응형