C# 利用 Queue(队列) 解决舞伴配对问题
【案例描述】
本案例主要讲解具体队列结构的泛型类型 Queue<T> 的使用方法。案例以模拟舞伴配对为例,在舞会上,男士和女士各排成一队,组成两队等待跳舞的队伍。当舞曲开始时,依次从男士队伍和女士队伍的头部各出一人组成舞伴,直到有一队全部配对无一人剩下为止。剩下未配对的人留在等待队伍中,等待下一轮舞曲开始时,他们先参与配对。当舞曲完成时,跳舞队伍中的人回到等待队伍的末尾等待下一轮舞曲的开始。
【实现过程】
(1)创建一个名为 PartnerMatch 的控制台应用程序。
(2)初始化男士等待队列和女士等待队列。在 main 函数中添加代码如下:
//进入舞厅的男士列表
string[] gentlemen = new string[] { 「郑一」, 「张三」, 「王五」, 「周七」, 「钱九」 };
//进入舞厅的女士列表
string[] ladies = new string[] { 「胡二」, 「李四」, 「赵六」};
Queue<string> waitingGentlemen = new Queue<string>(); //男士等待队列
Queue<string> waitingLadies = new Queue<string>(); //女士等待队列
Queue<string> dancingGentlemen = new Queue<string>(); //男士跳舞队列
Queue<string> dancingLadies = new Que