栈
栈的基本概念
- 栈(Stack)是一种后进先出(LIFO)的线性表,只允许在一端(栈顶)进行插入和删除操作。
存储结构
- 顺序存储:用数组实现,空间连续,支持随机访问。
- 链式存储:用链表实现,空间灵活,插入/删除高效。
典型应用
- 表达式求值
- 递归实现
- 括号匹配
- 函数调用
习题
习题 1
简述栈的定义和主要特点。
答案与解析
栈是后进先出(LIFO)结构,只能在栈顶插入和删除。
习题 2
栈的顺序存储和链式存储有何优缺点?
答案与解析
顺序存储:空间连续,支持随机访问,但扩容不便;链式存储:空间灵活,插入/删除高效,但不支持随机访问。
习题 3
举例说明栈的典型应用。
答案与解析
表达式求值、递归、括号匹配、函数调用等。
考研真题
真题 1
【2022·数据结构】栈的主要特点是什么?适用于哪些场景?
答案与解析
栈是后进先出(LIFO)结构,只允许在栈顶操作。适用于递归、表达式求值、括号匹配等。