Ryo's Blog
  • Articles
  • Learn from AI
  • Tags
  • More
  • ...
#杂技#Blog#杂谈#C++#Python#数据结构#算法#排序#算法竞赛#设计模式#笔记#GitHub#AWS#CI/CD#IaC#DevOps#VSCode#Hexo#JavaScript#Kubernetes#Docker#Cloud Native#Cursor#可视化#数学#工具#Nextjs#Tag1#Tag2#单行Tag#Tag#Tag/Tag2#Tag3#Linux#systemctl#journalctl#timedatectl#BasicKnowledge#Operation#Signal#memory#schedule#Cloud Computing#PyTorch#ONNX#深度学习#模型部署#学习笔记#OpenCV#图像处理#Rust#编程语言#Windows#macOS#可执行文件#LoRA#参数高效微调#模型训练#反向传播#自动微分#GoLang#Memory Management#Deep Learning#Model Management#Neural Networks#ResNet#Mathematics#协议#IoT#物联网#消息队列#Stable Diffusion#Concurrency#Scheduler#Goroutine#test#wiki#page1#subpage1#page2#subpage2#subpage3#subpage34#page3
Python字典的实现原理
2020-08-02

> CPython从3.6开始,字典(dict)不再是无序的了——字典的修改了原先的底层实现,变得能按字典插入的顺序进行遍历。而Python从3.7开始将字典的有序性写入语言特性,不管是Jython、IronPython还是其他Python实现,从3.7开始大家的字典都是有序的了。

以前参加Python相关的面试时,面试官经常都会问一个问题:Python里的字典(dict)是有序的吗?

这自然难不倒我,我也照本宣科地讲:Python的字典底层是用哈希表实现的,在不发生冲突时读写的时间复杂度是O(1),比读写时间复杂度为O(logn)的红黑树要更快。但红黑树可以按下标的大小顺序进行遍历,而Dict遍历时是无序的。

#Python#数据结构
© 2023 Ryo Jerry Yu. All rights reserved.