以下各链表均不带有头结点,其中最不适合用作链栈的链表是______。
A. 只有表头指针没有表尾指针的循环双链表
B. 只有表尾指针没有表头指针的循环双链表
C. 只有表尾指针没有表头指针的循环单链表
D. 只有表头指针没有表尾指针的循环单链表
链栈是一种特殊的栈,它使用链表作为底层数据结构。在链栈中,我们只在栈顶进行插入和删除操作,因此,我们需要一个指针指向栈顶元素。对于循环链表,我们既可以从表头插入和删除,也可以从表尾插入和删除。但是从表头插入和删除更方便,因为这样可以避免在插入和删除时需要检查链表是否为空。
现在,我们看一下给出的四个选项:
A. 只有表头指针没有表尾指针的循环双链表:这种链表很适合用作链栈,因为我们可以直接通过表头指针访问到栈顶元素。
B. 只有表尾指针没有表头指针的循环双链表:这种链表也可以用作链栈,但是我们需要在插入和删除时遍历整个链表才能找到栈顶元素。
C. 只有表尾指针没有表头指针的循环单链表:这种链表和选项B类似,也可以在插入和删除时遍历整个链表才能找到栈顶元素。
D. 只有表头指针没有表尾指针的循环单链表:这种链表不适合用作链栈,因为在单链表中,我们不能从表头直接访问到最后一个元素(栈顶元素)。即使它是循环的,我们也必须遍历整个链表才能找到栈顶元素。
因此,最不适合用作链栈的链表是选项D。
这个题咋选的呀,想不明白
快乐小土狗 回复 北方: 见楼上回复
D
用户登录可进行刷题及查看答案
登录后提交答案