若需将一个栈S中的元素逆置,则以下处理方式中正确的是()。A.将栈S中元素依次出

题库2022-08-02  31

问题 若需将一个栈S中的元素逆置,则以下处理方式中正确的是()。A.将栈S中元素依次出栈并入栈T,然后栈T中元素依次出栈并进入栈SB.将栈S中元素依次出栈并入队,然后使该队列元素依次出队并进入栈SC.直接交换栈顶元素和栈底元素D.直接交换栈顶指针和栈底指针

选项 A.将栈S中元素依次出栈并入栈T,然后栈T中元素依次出栈并进入栈S
B.将栈S中元素依次出栈并入队,然后使该队列元素依次出队并进入栈S
C.直接交换栈顶元素和栈底元素
D.直接交换栈顶指针和栈底指针

答案 B

解析 本题考查栈和队列的基本运算。
    栈的运算特点是先入后出。栈的操作一般为初始化栈、元素入栈、元素出栈、判断栈是否为空、取栈顶元索的副本等,对栈中元素的操作应采用栈结构提供的操作接口实现。
    对于选项A,将栈S中元素依次出栈并入栈T后,栈T中元素的排列正好是原栈S中元素的逆序,再将栈T中元素依次出栈并进入栈S,则栈S中的元素以原次序放置,不能实现栈S中元素逆置的要求。
    对于选项 B将栈S中元素依次出栈并入队后,队头元素为原栈S的栈顶元素,队尾元素尾原栈S的栈底元素。队列的操作特点是先入先出,因此使该队列元素依次出队并进入栈S后,队头元素就进入栈底,队尾元素称为栈顶,因此可实现将栈S中元素逆置的效果。
    对于选项C,直接交换栈顶元素与栈底元素既不符合栈结构的操作要求,也达不到逆置栈中元素的要求。
    对于选项D,直接交换栈顶指针和栈底指针不符合栈结构的操作要求。
转载请注明原文地址:https://tihaiku.com/congyezige/2428341.html

最新回复(0)