ฉันกำลังสอนCS2 ( Java and data structures
) และฉันมีปัญหาในการหาตัวอย่างที่ดีที่จะใช้เมื่อสอนคิว แอปพลิเคชันหลักสองอย่างที่ฉันใช้สำหรับการmultithreaded
ส่งข้อความ (แต่การเขียนโปรแกรม MT อยู่นอกขอบเขตสำหรับหลักสูตร) และBFS-style algorithms
(และฉันจะไม่ครอบคลุมกราฟจนกว่าจะถึงระยะหลัง)
ฉันยังต้องการหลีกเลี่ยงตัวอย่างที่วางแผนไว้ สิ่งที่ฉันคิดว่าถ้าฉันจะแก้ปัญหาพวกเขาในแบบเธรดเดียวฉันจะใช้ลิสต์แทนคิว ฉันมักจะใช้คิวเฉพาะเมื่อการประมวลผลและการค้นพบเป็น interleaved (เช่นการค้นหา) หรือในกรณีพิเศษอื่น ๆ เช่นบัฟเฟอร์ที่มีความยาว จำกัด (เช่นการบำรุงรักษารายการNสุดท้าย) ในทางปฏิบัติฉันพยายามสอนนักเรียนถึงวิธีที่ดีในการทำสิ่งต่าง ๆ ในโปรแกรมจริงไม่ใช่แค่ของเล่นเพื่อแสดงคุณลักษณะ
คำแนะนำเกี่ยวกับอัลกอริทึมที่ดีเรียบง่ายหรือแอปพลิเคชันของคิวที่ฉันสามารถใช้เป็นตัวอย่าง แต่จำเป็นต้องมีความรู้ขั้นต่ำอื่น ๆ