【无标题】Python数据结构和算法04链单向循环链表、栈与队列

单向循环链表尾结点指向头节点

2exercise/05_single_cycle_link_list
主要注意点是从尾结点向头结点的链接,特别是针对更改头尾节点的情况、以及只包含一个数据的特殊情况

遍历和求长度
添加元素(头部、尾部、中间)
删除元素

双向链表扩充为双向循环链表(练习)

2exercise/06_double_cycle_link_list

栈是一种容器,可以存入数据元素、访问元素、删除元素在同一端输入、输出数据
在这里插入图片描述
确定了一种后进先出的原理运作。(队列在一端进行输入、另一端输出数据,原则是先进先出)
加入数据push
输出数据pop

栈的操作

Stack)创建一个新的空栈
push(item)添加一个新的元素item到栈顶
pop() 弹出栈顶元素
peek()返回栈顶元素
is_empty)判断栈是否为空
size()返回栈的元素个数

队列

取的一端叫队头,存的一端叫队尾

队列的操作

Queue()创建一个空的队列
enqueue(item)往队列中添加一个item元素
dequeue()从队列头部删除一个元素
is_empty()判断一个队列是否为空.
size()返回队列的大小

双端队列(可看做底在一起的两个队列)

Deque()创建一个空的双端队列
add_front(item)从队头加入一个item元素
add_rear(item)从队尾加入一个item元素
remove_front()从队头删除一个item元素.
remove_rear(从队尾删除一个item元素.
is_empty()判断双端队列是否为空-
size()返队列的大小

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值