[배열로 집합 만들기]
1. 배열을 사용하여 집합을 표현하려면 집합의 요소 개수와 배열의 요소 개수는 항상 같아야 합니다. 즉, 집합의 상태를 표현할 데이터가 필요합니다.
※ 집합관련 메소드들입니다.
max
집합의 최대 크기를 나타내는 필드입니다.
num
집합의 요소개수입니다. 집합의 요소는 배열의 앞쪽부터 0~num-1까지 넣습니다.
set
집합을 저장할 배열입니다. 배열의 메모리 확보는 생성자에서 합니다.
생성자 IntSet
집합은 처음에는 비어있기 때문에 0을 대입합니다.
생성자의 매개변수 capacityh를 max 에 복사하고 집합의 요소 개수가 max가 되도록 배열 set을 생성합니다.
집합의 최대 개수를 반환하는 capacity 메서드
집합이 가질 수 있는 가장 큰 값을 반환하는 메서드로, max의 값을 반환합니다.
집합의 현재 요소 개수를 반환하는 size 메서드
집합의 현재 요소 개수를 반환하는 메서드로, num의 값을 반환합니다.
요소를 검색하는 indexOf 메서드
집합 배열 set에 n이 있는지 선형 검색으로 확인합니다.
성공하면 찾은 요소 n의 인덱스를 반환하고, 실패하면 -1을 반환합니다.
요소 n이 있는지 확인하는 contains 메서드
집합 배열 set에 n이 들어 있는지 확인하는 메서드입니다.
요소 n을 집합에 추가하는 add메서드
배열이 비어 있고 집합에 같은 요소가 들어 있지 않은 경우에만 요소를 추가합니다.
요소 n을 집합에서 삭제하는 remove 메서드
집합에서 요소 n을 삭제하는 메서드입니다.
'자바 Do,It 알고리즘(끝)' 카테고리의 다른 글
[자바 Do It! 알고리즘]Chapter07 문자열 검색 (KMP법) (0) | 2021.05.23 |
---|---|
[자바 Do It! 알고리즘]Chapter07 문자열 검색 (브루트-포스법) (0) | 2021.05.22 |
[자바 Do It! 알고리즘]Chapter06 정렬 (힙 정렬) (0) | 2021.05.18 |
[자바 Do It! 알고리즘]Chapter06 정렬 (병합 정렬-Arrays.sort로 퀵 정렬과 병합정렬하기) (0) | 2021.05.17 |
[자바 Do It! 알고리즘]Chapter06 정렬 (병합 정렬) (0) | 2021.05.16 |