본문 바로가기

자바 Do,It 알고리즘(끝)

[자바 Do It! 알고리즘]Chapter07 집합 (1)(배열로 집합 만들기)

[배열로 집합 만들기]

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을 삭제하는 메서드입니다.