ADT 계약

스택·큐 동작은 예외와 순서 테스트로 검증한다

스택과 큐는 구현 배열보다 먼저 LIFO/FIFO 계약, 빈 구조 정책, 용량 제한을 명확히 해야 교체해도 동작이 흔들리지 않습니다.

순서 계약

LIFO와 FIFO를 테스트로 확인

push/pop 또는 enqueue/dequeue 결과가 입력 순서와 어떤 관계인지 작은 예제로 고정합니다.

예외 정책

빈 구조에서의 의미 결정

예외를 던질지 특수값을 반환할지 정하지 않으면 알고리즘 종료 조건도 흔들립니다.

용량 제한

overflow 처리 문서화

고정 용량 큐나 원형 큐는 가득 찬 상태와 빈 상태를 구분하는 규칙이 핵심입니다.

구현 전후 고정할 계약

삽입top 또는 rear가 어디를 가리키는지 삽입 직후 상태로 검증합니다.
제거반환값과 포인터 이동 순서가 계약과 일치하는지 빈 구조까지 확인합니다.
교체배열, 연결 구조, deque 구현으로 바꿔도 같은 ADT 테스트가 통과해야 합니다.