专栏名称: Python开发者
人生苦短,我用 Python。伯乐在线旗下账号「Python开发者」分享 Python 相关的技术文章、工具资源、精选课程、热点资讯等。
今天看啥  ›  专栏  ›  Python开发者

Python 源码阅读:dict

Python开发者  · 公众号  · Python  · 2017-10-11 20:00
    

文章预览

(点击 上方蓝字 ,快速关注我们) 来源:伯乐在线 - wklken 如有好文章投稿,请点击 → 这里了解详情 源码位置 Include/dictobject.h | Objects/dictobject.c PyDictObject的存储策略 1. 使用散列表进行存储   2. 使用开放定址法处理冲突        2.1 插入 , 发生冲突 , 通过二次探测算法 , 寻找下一个位置 , 直到找到可用位置 , 放入 ( 形成一条冲突探测链 )        2.2 查找 , 需要遍历冲突探测链        2.3 删除 , 如果对象在探测链上 , 不能直接删除 , 否则会破坏整个结构 ( 所以不是真的删 ) 关于 hash表的 wiki 基本键值PyDictEntry typedef struct {      Py_ssize_t me_hash ;      PyObject * me_key ;      PyObject * me_value ; } PyDictEntry ; 说明 1. PyDictEntry 用于存储键值对 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览