Python中的字典是否可以在C ++中看作Map

时间:2011-03-31 08:11:30

标签: c++ python

Python中的字典是否可以被视为C ++中的Map

插入复杂度是恒定时间吗? 那么字典的排序复杂性怎么样? 迭代怎么样?

需要一些好处或链接到良好的资源。

谢谢!

2 个答案:

答案 0 :(得分:2)

如果我没记错的话,C ++地图实现使用树,因此插入和检索是O(log(n))而不是O(1)。

Python使用哈希表,因此检索是O(1)。

答案 1 :(得分:2)

Python dicts是通用数据结构的一种实现,通常称为哈希表或哈希映射。

对于Python dicts,复杂性是您对哈希表的有效实现所期望的;插入是恒定时间;迭代是O(N)。字典是未分类的;如果你想要一些经过排序的东西,你通常会把它变成别的东西(比如一个列表)。