设栈的输入序列是(1,2,3,4),则【 】不可能是其出栈序列。
A、1243
B、2134
C、1432
D、4312
E、3214
设栈的输入序列是(1,2,3,4),则【 】不可能是其出栈序列。
A、1243
B、2134
C、1432
D、4312
E、3214
D
栈的输入序列为1,2,3,...,n,输出序列为a1,a2,a3,...,an,若ai=n(1≤i≤n),则有 ak>ak+1>an。
设栈的输入序列为1,2,3,...,n,输出序列为a1,a2,a3,...,an,若存在1≤k≤n使得 ak=n,则当k≤i≤n时,ai 为【 】
假设有两个按元素值递增有序排列的线性表A和B,均以带头结点的单链表作为存储结构,编写算法将A表和B表归并成一个按元素值递减有序排列的线性表C,并要求利用原表(A表和B表)的结点空间存放表C。
试写出在双向链表da中的插入操作算法,算法中插入位置的获取可直接引入getnodep(da,i),其中参数da为双向链表,i是要插入的数据,要求算法中含有双向链表da的结点结构描述。
已知结点指针p、q分别表示双向链表中任意两个相邻结点(即p->rlink=q且q->llink=p),请写出删除q所指结点的程序段。
对于初始为空的栈S,入栈序列为a、b、c、d,且每个元素进栈、出栈各1次。若出栈序列的第一个元素为d,则合法的出栈序列为【 】。
如果进栈序列为e1,e2,e3,e4,则可能的出栈序列是【 】。
算术表达式a+(b-c)*d的后缀式是【 】(-、+、*表示算术的减、加、乘运算,运算符的优先级和结合性遵循惯例)。
若元素a、b、c、d、e、f依次进栈,允许进栈、出栈操作交替进行。但不允许连续三次进行出栈工作,则不可能得到的出栈序列是【 】。
算术表达式a+b-c*d的后缀式是【 】(-、+、*表示算术的减、加、乘运算,运算符的优先级和结合性遵循惯例)。
三个互异的元素a、b、c依次经过一个初始为空的栈后,可以得到【 】种出栈序列。
设有初始为空的栈S,对于入栈序列a、b、c、d,经由一个合法的进栈和出栈操作序列后(每个元素进栈、出栈各1次),以c作为第一个出栈的元素时,不能得到的序列为【 】。