“C语言部分-Day09”
一、数据结构
常用数据结构分为链表、栈、队列、哈希表、红黑树等
1.2 栈
栈是一种先进先出(FIFO)的数据结构,它是一种受限的线性表,只能在栈顶添加和删除元素,图示如下:
1.2.1 栈的作用
1、函数调用
2、深度优先遍历
3、浏览器访问页面的前进和后退
4、括号匹配问题(※※※)
5、后缀表达式求值
- 前缀表达式:1 + 2 * 3
- 后缀表达式:1 2 3 * +
1.2.2 栈基本操作:
- 入栈(push)
- 出栈(pop)
- 是否为空(isEmpty)
- 查(peek)
1.2.3 实现栈的基本操作
栈可以用数组或者链表来实现
1.2.3.1 用链表实现
mystack.h
mystack.c
main.c测试
1.3 队列
队列也是一种受限的线性表