큐(Queue)에 쌓인 모든 요소를 한 번에 비우고 싶다면, 내부 컨테이너 배열을 새로운 빈 배열로 재할당하는 것만으로 간단하게 처리할 수 있습니다. 별도의 반복문을 돌며 요소를 하나씩 제거할 필요가 없기 때문에 가장 효율적이고 직관적인 방법입니다.
clear() 메서드 구현
큐 클래스 내부에 다음과 같이 clear() 메서드를 정의하면 됩니다.
clear() {
this.container = [];
}이 메서드가 호출되면 기존에 저장되어 있던 모든 요소가 제거되고, 큐는 완전히 빈 상태로 초기화됩니다.
예제
실제로 이 메서드가 정상적으로 동작하는지 확인해 보겠습니다. 먼저 요소 두 개를 추가한 뒤 출력하고, clear()를 호출한 후 다시 출력합니다.
let q = new Queue(2); q.enqueue(3); q.enqueue(4); q.display(); q.clear(); q.display();
출력 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
[ 3, 4 ] [ ]
첫 번째 display() 호출 시에는 추가했던 요소들이 그대로 보이지만, clear() 실행 후에는 빈 배열이 출력되는 것을 확인할 수 있습니다. 이처럼 빈 배열로 재할당하는 방식은 시간 복잡도 면에서도 효율적이어서, 대량의 데이터를 다루는 큐에서도 안심하고 사용할 수 있습니다.