结构推理
双端队列是一种特殊的线性表,它的所有插入和删除操作都限制在表的两端进行。现有4个元素要插入空双端队列,问可以得到多少种不同的双端队列状态?如果是5个元素,情况又是怎样?如果有n个元素呢?
【正确答案】对于4个元素,有24-1=8种排列;
对于5个元素,有25-1=16种排列;
对于n个元素,有2n-1种排列。
求解过程:对双端队列用归纳法证明。
当元素个数为1,即n=1时,只有一种排列即21-1=1,结论成立。
假设当n=k时结论成立,即有2k-1种排列。
则当n=k+1日寸
将输入序列a0,a1,…,ak中的ak拿掉,则前a0,a1,…,ak-1进入队列时共有2k-1种排列(由归纳假设)。现将ak进队,由于是双端队列,故ak尽可能放在队头或队尾,故有两种排列方法。于是k+1个元素有2×2k-1种排列。
由归纳法知结论成立,即n个元素共有2n-1种排列。
【答案解析】