如何了解一种语言的数据类型的效率和占用内存的情况?例如 python
最近在学习算法的一些知识,突然意识到数据结构的重要性。
我的疑问是以下几点:
1.例如python中 有自带的数据类型列表和字典,但是字典的访问速度比列表快吧?但是自己占内存大?对不对呢?
2.python自带数据类型列表,pandas有数据框,大家都说数据框很占内存,我也发现了,但是占内存在理论上怎么解释数据框为什么就占更多内存呢?
3.数据结构和各个语言中的数据类型的关系是什么?例如 树 是数据结构吧?存的时候在python里面我就是用字典存,这么理解对吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
访问速度和内存占用大小都是由数据结构本身决定的 。用hash实现的,访问和查找速度肯定快,但是这种结构就牺牲了内存开销。同样地,一个类的属性和方法越多,那么实例占用的内存肯定越大。可以用
sys.getsizeof
查看大小。数据结构和语言本身并无直接联系,只是实现方式略有不同罢了,关于树形结构,比如也可以用列表或者xml格式存储,没有什么硬性规定,看具体需求