내가 가르치고 CS2를 ( Java and data structures
), 및 대기열을 가르 칠 때 사용하는 좋은 예와 함께 오는 몇 가지 어려움을 겪고 있어요. 내가 사용하는 두 가지 주요 응용 프로그램은 multithreaded
메시지 전달 (MT 프로그래밍은 물론 범위를 벗어남)이며 BFS-style algorithms
(나중에 그래프를 다루지 않을 것입니다).
또한 고려 된 예를 피하고 싶습니다. 내가 생각하는 대부분의 것, 실제로 단일 스레드 방식으로 해결하려는 경우 대기열 대신 목록을 사용합니다. 처리 및 검색이 인터리브 (예 : 검색)되거나 길이 제한 버퍼 (예 : 마지막 N 항목 유지)와 같은 다른 특수한 경우에만 큐를 사용하는 경향이 있습니다 . 실용적으로, 나는 학생들에게 특징을 보여주는 장난감뿐만 아니라 실제 프로그램에서 실제로 일을하는 좋은 방법을 가르치려고 노력하고 있습니다.
모범으로 사용할 수 있지만 최소한의 다른 사전 지식이 필요한 대기열의 훌륭하고 간단한 알고리즘 또는 응용 프로그램에 대한 제안이 있습니까?