吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1017|回复: 16
收起左侧

[学习记录] 学习Python文档两个小节之后总结的笔记

[复制链接]
甜萝 发表于 2023-2-21 21:02
本帖最后由 paypojie 于 2023-2-21 21:34 编辑

列表实现堆栈

用列表方法实现堆栈非常容易 最后插入的元素最先取出(后进先出 也可以称作先进后出)将元素插入到堆栈的顶端(即列表的末尾)使用append()方法 将堆栈顶部的元素移除 使用pop()方法 不用指定索引


a = [1]
print(a)
a.append(2)
print(a)
a.append(3)
print(a)
a.pop()
print(a)
a.pop()
print(a)

运行结果

[1]
[1, 2]
[1, 2, 3]
[1, 2]
[1]



列表实现队列

用列表也可以实现队列 最先加入的元素最先取出(先进先出 也可以称为后进后出)但是 用列表实现队列的效率很低 因为在列表的末尾添加和删除元素很快捷 使用append()和pop()方法即可 在列表的开头插入和移除元素却很慢(因为所有的元素都要移动一位)使用collections.deque在列表的两端添加和删除元素是一个不错的办法


from collections import deque
b = deque(['Duo','Emma','Lisa'])
print(b)
b.append('sirl')
print(b)
b.append('xiaoai')
print(b)
b.popleft()
print(b)
b.popleft()
print(b)

运行结果

deque(['Duo', 'Emma', 'Lisa'])
deque(['Duo', 'Emma', 'Lisa', 'sirl'])
deque(['Duo', 'Emma', 'Lisa', 'sirl', 'xiaoai'])
deque(['Emma', 'Lisa', 'sirl', 'xiaoai'])
deque(['Lisa', 'sirl', 'xiaoai'])

免费评分

参与人数 2吾爱币 +2 热心值 +1 收起 理由
danielau + 1 鼓励转贴优秀软件安全工具和文档!
E式丶男孩 + 1 + 1 可以用到算法中

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

baolinguo 发表于 2023-2-21 21:25
这种方法还是不错的,不过在python中我们可以不考虑堆栈问题,交由系统处理即可。
 楼主| 甜萝 发表于 2023-2-21 21:27
baolinguo 发表于 2023-2-21 21:25
这种方法还是不错的,不过在python中我们可以不考虑堆栈问题,交由系统处理即可。

记录记录大脑中的意识 哈哈
baolinguo 发表于 2023-2-21 21:35
paypojie 发表于 2023-2-21 21:27
记录记录大脑中的意识 哈哈

对于学过其他编程语言如C、JAVA一类的python初学者来说,python省去了指针、堆栈甚至内存管理(垃圾回收)等好多的处理,均交由系统内部进行管理了,普通的初学者会觉得简单,对于有过其他语言学习历程的反而不是很有利。
 楼主| 甜萝 发表于 2023-2-21 21:36

客气啦 。
patch12345 发表于 2023-2-21 21:55
学习一下感谢
 楼主| 甜萝 发表于 2023-2-21 21:59

加油呀。  
li3596369 发表于 2023-2-22 08:39
学习学习
vtor 发表于 2023-2-22 09:36
有个疑问,deque有没有popright函数
如果有的话,这个东西能不能也当成栈进行使用?
头像被屏蔽
saszznz 发表于 2023-2-22 09:38
提示: 作者被禁止或删除 内容自动屏蔽
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 01:30

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表