栈的基础知识
- 是一种数据结构,在Python中常使用列表来模拟实现
- 特点:先进后出
栈的基本操作
- 因为Python中通过列表模拟实现栈,所以以下的基本操作实际是列表的一些操作
- 获取长度,使用
len(stack)方法 - 进栈,使用
stack.append()方法 - 出栈,使用
stack.pop()方法(将移除最后一个也就是栈顶元素) - 获取栈顶元素,使用
stack[-1] - 判断是否为空,可以通过
if not stack来判定,因为Python中列表、字符串、元组等容器在空的时候为False,非空时为True
队列的基础知识
- 是一种数据结构,在Python中使用标准库queue模块里的Queue类进行创建,当然,也可以使用Python里的列表结构进行模拟实现
- 特点:先进先出
队列的基本操作
- 如果通过列表模拟实现队列,则以下的基本操作实际是列表的一些操作
- 获取长度,使用
len(queue)方法 - 入队,使用
queue.append()方法 - 出队,使用
queue.pop(0)方法(将移除第一个也就是队列首元素) - 获取队列首元素,使用
queue[0] - 判断是否为空,可以通过
if not queue来判定,因为Python中列表、字符串、元组等容器在空的时候为False,非空时为True
- 获取长度,使用
- 如果使用queue模块中的Queue类
- 创建,
my_queue = queue.Queue() - 入队,使用
my_queue.put(value)方法 - 出队并获取元素,使用
my_queue.get()方法(将移除并返回第一个也就是队列首元素) - 判断长度,使用
my_queue.qsize() - 判断是否为空,使用
my_queue.empty()
- 创建,







![[足式机器人]Part2 Dr. CAN学习笔记- 最优控制Optimal Control Ch07-2 动态规划 Dynamic Programming](https://img-blog.csdnimg.cn/direct/718639af45714c9496ccc3df795adbff.png#pic_center)












