数据结构 循环队列有一个侦察班,由 11 人组成,其中 6 名是老侦察员,5 名是新侦察员.一次执勤要穿越敌人的一道封锁

问题描述:

数据结构 循环队列
有一个侦察班,由 11 人组成,其中 6 名是老侦察员,5 名是新侦察员.一次执勤要穿越敌人的一道封锁线.根据当时的情况,队伍只能单线纵向排列,且前面第一、二人越过后,第三个人要返回报告情况,该侦察员随后编到队伍的末尾.接着第四、五人越过,第六人报告并排到末尾.依此类推.最后三人一齐顺次过去.越过封锁线后,队伍便形成老、新交替的队形.请问,穿越前队伍该怎样排?
要求:采用队列实现!
输出:O 表示老队员,N 表示新队员
就给个思想 或者C语言代码
1个回答 分类:综合 2014-10-23

问题解答:

我来补答
思路:
先初始化队列为新老交替,然后逆向模拟过线的行为,几次迭代后的状态就为初始状态
如,新初始化状态为:10101010101
由于最后三人顺次而过,所以最后三人之前的状态为10101010,101
再往前,则需要一个侦察,则之前的状态为:10101010,110
再往前,则是两人通过,则之前的状态为:101010,10110
一次类推,知道返回到所有人都未过线的状态
 
 
展开全文阅读
剩余:2000
上一页:合外力做功,