3.1-栈
一、单选 1. 栈和队列具有相同的( )。 A. 抽象数据类型 B. 逻辑结构 C. 存储结构 D. 运算 [Solution] 栈和队列具有相同的逻辑结构,即线性逻辑结构, $therefore B$✔️. 8. 向一个栈顶指针为top的链栈中插入一个x结点,则执行( )。 A. top->next=top; B. x->next=top->next;top->next=x; C. x->next=top;top=x; D. x->next=top;top=top->next; [Solution] 链栈采用不带头结点的单链表表示时,进栈操作在首部插入一个结点x(x->next=top;),再将top指向该插入的结点(top=x;) Push时,先让top与新结点联系上,再进行插入。如顺序栈的Push:top先+1,后插入;链栈的Push:x->next = top; top = x; $therefore B$✔️. 9. 链栈执行Pop操作,并将出栈的元素存在x中应该执行( )。 A. x=top;top=top->next B. x=top->data; C. top=top->next;x=top->data; D. x=top->data;top=top->next; [Analysis] 出栈时,应该元素先出栈,top再-1。即x=top->data;top=top-