双端队列[《数据结构题集》(C语言版) 3.14题解答与总结]

3.14题目如下:

若以 1234作为双端队列的输入序列, 试分别求出满足以下条件的输出序列:  

 (1) 能由输入受限的双端队列得到, 但不能由输出受限的双端队列得到的输 出序列。    

(2) 能由输出受限的双端队列得到, 但不能由输入受限的双端队列得到的输 出序列。  

 (3) 既不能由输入受限的双端队列得到, 也不能由输出受限的双端队列得到 的输出序列。 

 

要想解决这种问题,必须要弄懂三个问题:

1.双端队列概念;

2.输入受限双端队列的特点;

3.输出受限双端队列的特点。

概念:

1.双端队列:可以在两端进行入队、出队的队列,如下图所示:

双端队列[《数据结构题集》(C语言版) 3.14题解答与总结]_第1张图片

2.输入受限的双端队列:在一端只能进行出队操作,在另一端可以出、入队,如下图所示:

双端队列[《数据结构题集》(C语言版) 3.14题解答与总结]_第2张图片

3.输出受限的双端队列:在一端只能进行入队,在另一端可以出、入队,如下图所示:

双端队列[《数据结构题集》(C语言版) 3.14题解答与总结]_第3张图片

记法:什么受限就少什么,如:输出受限,一端就只有输入。

解题:

(1)4123

(2)3214

(3)4231

答案不唯一,可以试一下,挺有意思的。

什么?怎么得到的?你把 4 放到第一个出队元素试一试。

还不行?那你让间隔一个元素的两个元素连起来出队试试。

可以了吧,挺神奇的其实。

THE END!

 

你可能感兴趣的:(数据结构)