首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >O(1)中的字典中的Python获取随机密钥

O(1)中的字典中的Python获取随机密钥
EN

Stack Overflow用户
提问于 2012-06-01 04:36:16
回答 5查看 6.5K关注 0票数 20

我需要一个支持快速插入和删除(键,值)对的数据结构,以及“获取随机键”,它的作用与字典的random.choice(dict.keys())相同。我在互联网上搜索过,大多数人似乎对random.choice(dict.keys())方法很满意,尽管它是线性时间。

我意识到可以更快地实现这一点

  • 我可以使用一个调整大小的哈希表。如果我保持键与槽的比率在1和2之间,那么我可以选择随机索引,直到我命中一个非空的槽。我只看了1到2个键,在保证最坏情况下O(

n)的情况下,我可以使用AVL树,增加等级来得到这些操作。

但是,在Python中有什么简单的方法可以做到这一点吗?看起来应该是这样的!

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10840901

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档