728x90
반응형

2

[C++] Queue Clear

std::queue의 경우 clear를 제공해주지 않는다. 결국 size만큼 pop 해서 들어내야 한다. while(!q.empty()) q.pop(); 다른 방법으로는 빈 queue와 바꿔치기를 하면된다. queue empty; swap(q, empty); swap을 사용하려면 algorithm을 include 해야 한다. 그리고 새로운 방법으로 queue를 재선언해도 된다. q = queue(); How do I clear the std::queue efficiently? I am using std::queue for implementing JobQueue class. ( Basically this class process each job in FIFO manner). In one scenario, ..

[자료구조] 큐(Queue)

큐는 간결하게 임시 데이터를 다루며 제약이 있는 배열이라는 점에서 스택과 비슷하다. 다만 데이터를 처리하는 순서가 다르므로 작업 중인 애플리케이션의 요구에 따라 선택한다. 극장에 줄 서 있는 사람들을 큐처럼 생각할 수 있다. 줄 맨 앞에 있는 사람이 그 줄을 떠나 가장 먼저 극장에 들어간다. 큐 역시 큐에 첫 번째로 추가된 항목이 가장 먼저 제거된다. 그래서 컴퓨터 과학자는 큐를 FIFO(first in, first out)이라 한다. 큐는 다음과 같은 제약을 포함한다. 데이터는 큐의 끝에만 삽입할 수 있다. 데이터는 큐의 앞에서만 읽을 수 있다. 데이터는 큐의 앞에서만 삭제할 수 있다. 빈 큐로 시작해서 큐의 동작을 알아보자. 먼저 5를 삽입하자. ( 스택 삽입은 push라고 하지만 큐 삽입은 put,..

728x90
반응형