자료구조와 알고리듬 With Java/[프로그래머스] Algorithm

Part 04 집합 (Set)

계란💕 2022. 3. 22. 12:30

1. 집합 (Set)

  - 선형 데이터 구조 + 탐색 알고리즘

  - list와 다르게 set은 중복을 허락하지 않는다.

  - set은 순서를 보장하지 않는다.

 

  - 합집합: setA.addAll(setB) - B의 원소를 모두 A에 추가한다.

  - 차집합: setA.removeAll(setB) - A에서 B의 원소 모두 제거

  - 교집합: setA.retainAll(setB)

 

 

  Ex) Set 연습

java
열기

 

  Ex) 로또 번호

java
열기

  - 먼저, 1~45 사이가 아니면 false를 반환한다.

  - 1~45 만족하면 l을 set에 추가한다. 

  - 마지막에 set의 사이즈와 배열 lotto의 길이가 같은지 boolean형태로 반환한다.

 

  Ex) 끝말 잇기

java
열기

  - words.length : String 배열 words의 크기

  - w.length(): String w의 길이 (글자 수)

  - set.add(words[i]) 에서 이미 있는 원소를 추가하려면 false가 반환되므로 이를 조건으로 이용한다.

 

  Ex) 배열에서 중복된 숫자 제거하고 나타내기

java
열기

  - 같은 숫자가 여러 개 나올 수 있기 때문에 set이 아닌 list를 이용한다.

 

 

출처: https://programmers.co.kr/learn/courses/13577

'자료구조와 알고리듬 With Java > [프로그래머스] Algorithm' 카테고리의 다른 글

Part 06 선형탐색 (Linear Search)  (0) 2022.03.23
Part 05 Stack과 Queue  (0) 2022.03.23
Part 03 Map  (0) 2022.03.22
Part 02 Array와 List  (0) 2022.03.21
Part 01 시작하기  (0) 2022.03.21