底层由线性表实现,列表中元素 保存的不是具体的数据的内存地址,而是 指针(就是指向元素的内存地址的指针)
简而言之:列表 存储的是指针 就是指向内存的头信息和元素 分开放 所以可以动态的扩容 也可以 多种数据结构的数据
列表的扩容:首先会申请8个元素的内存空间大小,然后如果满了,扩容4倍,直至数量达到了50000个,就扩容2倍的连续储存空间。
底层 哈希表(散列表 实现
其实字典是由一个关联数组或者哈希数组, 数组的索引是 将 键通过哈希算法得到的整型数字 对数组长度取余 取余的结果就是下标 索引 根据索引区查找内存地址
dict元素修改更新 判断的依据就是 索引对应的表的内存空间的键值对和要修改的键值对是否一致
哈希碰撞 公开寻址
判断两个元素是否一致 依据就是 hash值 是否一致
frozenset 冰冻集合 不可变的数据类型 是能做 交差并补 操作
元组是长度不可变的数组, 列表则是可变的数组
链表:单个节点存储的是数据 和 指向下一个节点的指针(就是下一个节点的位置)
栈:先进后出 后进先出
队列:先进先出 queue
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。