用链表作为栈的存储结构时,若要入栈操作成功,则( )。A.必须先判断是否栈满B.必须先判断是否栈空C.必须先判断栈顶元素的类型D.必须成功申请到入栈元素所需结点
用链表作为栈的存储结构时,若要入栈操作成功,则( )。
A.必须先判断是否栈满
B.必须先判断是否栈空
C.必须先判断栈顶元素的类型
D.必须成功申请到入栈元素所需结点
B.必须先判断是否栈空
C.必须先判断栈顶元素的类型
D.必须成功申请到入栈元素所需结点
参考解析
解析:本题考查数据结构基础知识。
栈的修改要求是仅在表尾进行插入和删除操作,元素间的关系仍是线性的。对于删除操作(即出栈),无论在何种存储方式下实现该运算,栈不为空才能操作成功。对于插入操作(即入栈),要求为新加入的元素准备好存储空间,在链式存储方式下,不存在栈满的情形,只需判断是否为新元素成功申请到需要的结点。
栈的修改要求是仅在表尾进行插入和删除操作,元素间的关系仍是线性的。对于删除操作(即出栈),无论在何种存储方式下实现该运算,栈不为空才能操作成功。对于插入操作(即入栈),要求为新加入的元素准备好存储空间,在链式存储方式下,不存在栈满的情形,只需判断是否为新元素成功申请到需要的结点。
相关考题:
若栈采用链式存储且仅设头指针,则( )时入栈和出栈操作最方便。A.采用不含头结点的单链表且栈顶元素放在表尾结点B.采用不含头结点的单链表且栈顶元素放在表头结点C.采用含头结点的单循环链表且栈顶元素随机存放在链表的任意结点D.采用含头结点的双向链表且栈顶元素放在表尾结点
栈的特点是后进先出,若用单链表作为栈的存储结构,并用头指针作为栈顶指针,则( )。A.入栈和出栈操作都不需要遍历链表B.入栈和出栈操作都需要遍历链表C.入栈操作需要遍历链表而出栈操作不需要D.入栈操作不需要遍历链表而出栈操作需要
单选题如果以链表作为栈的存储结构,则退栈操作时()A必须判别栈是否满B判别栈元素的类型C必须判别栈是否空D对栈不作任何判别