Skip to content

Latest commit

 

History

History
72 lines (49 loc) · 1.95 KB

3.1.1 栈的基本概念.md

File metadata and controls

72 lines (49 loc) · 1.95 KB


3.1.1 栈的基本概念


  栈(stack) 是只允许在一端进行插入或删除操作的线性表。

  通过概念我们明确了,栈是一个线性表,所以它拥有线性表的所有特点,其次它又是受限的,即限定了插入和删除操作的限制,只能在一端。


入栈:a1~a5;出栈:a5~a1
  • 其中,可以出栈和入栈的一端称为 栈顶 top,而无法进行出栈和入栈操作的一端称为 栈底 bottom。栈顶所在的元素称为 栈顶元素,栈底所在的元素称为 栈底元素

  • 并且栈是一个 后进先出(LIFO,last in first out) 的数据结构。

  • 栈的基本操作

    • InitStack(&S):初始化一个空栈 S

    • StackEmpty(S):判断一个栈是否为空

    • Push(&S, x):压栈/进栈,若栈 S 未满,则将 x 元素加入使之成为栈顶元素

    • Pop(&S, &x):弹栈/出栈,若栈非空,则弹出栈顶元素,并用 x 的值返回

    • GetTop(S, &x):读取栈顶元素,若栈非空则用 x 返回栈顶元素

    • ClearStack(&S):销毁栈,并释放 S 占用的内存空间


💡 题型

  xxx

单项选择题

  1. xxxx( )

    A. xxx
    B. XX
    C. Xx
    D. xX

    查看解析

    答案:x


-- 完 --