ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Python - 如何将 list 列表作为数据结构使用

2021-07-26 23:04:17  阅读:150  来源: 互联网

标签:deque Python list 列表 queue 队列 print 数据结构 stack


列表作为栈使用

栈的特点

先进后出,后进先出

 

如何模拟栈?

  • 先在堆栈尾部添加元素,使用 append()
  • 然后从堆栈顶部取出一个元素,使用 pop()
# 模拟栈
stack = [1, 2, 3, 4, 5]

# 进栈
stack.append(6)
stack.append(7)

# 查看栈
print(stack)

# 出栈
print(stack.pop())

print(stack)


# 输出结果
[1, 2, 3, 4, 5, 6, 7]
7
[1, 2, 3, 4, 5, 6]

 

列表作为队列使用

队列的特点

先进先出,后进后出

 

list 能实现队列吗?

可以,但不推荐

  • 列表用作先进先出的场景非常低效
  • 因为在列表的末尾进行添加、移出元素非常快
  • 但是在列表的头部添加、移出元素缺很慢,因为列表其余元素都必须移动一位

 

如何模拟队列?

使用 collections.deque ,它被设计成可以快速从两端添加或弹出元素

# collections.deque
from collections import deque

# 声明队列
queue = deque(["polo", "yy", "mike"])

# 插入队列
queue.append("ok")
queue.append("world")
print(queue)

# 移出队列
print(queue.popleft())
print(queue.popleft())


# 输出结果
deque(['polo', 'yy', 'mike', 'ok', 'world'])
polo
yy

 

标签:deque,Python,list,列表,queue,队列,print,数据结构,stack
来源: https://www.cnblogs.com/poloyy/p/15063686.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有