Python3 中的 java TreeMap 类比

Posted

技术标签:

【中文标题】Python3 中的 java TreeMap 类比【英文标题】:java TreeMap analogue in Python3 【发布时间】:2020-04-01 08:15:47 【问题描述】:

作为一名学习 Python 的 Java 人,我试图找出这两种语言之间的相似之处。我在 python 中找到了集合模块以及类似于 java 集合框架的内置结构(这篇文章 What is/are the Python equivalent(s) to the Java Collections Framework? 涵盖)。

但我还没有找到 TreeMap 的类似物 - 基于红黑树的地图 - 按键排序的地图并保证获取、放置和删除操作的 log(n) 时间成本

Python 3.x 中有这样的结构吗?

【问题讨论】:

【参考方案1】:

看起来我找到了答案:https://pypi.org/project/sortedmap/。正如作者提到的,它由红黑树支持。

此外,为了提供 SortedMap 功能,可以使用以下库 http://www.grantjenks.com/docs/sortedcontainers/introduction.html 。它不是使用红黑树,而是使用使用 bisect 模块排序的键列表。

【讨论】:

以上是关于Python3 中的 java TreeMap 类比的主要内容,如果未能解决你的问题,请参考以下文章

java Map接口实现之一TreeMap(不涉及类比较)

Java集合框架 Map接口实现类--TreeMap的使用 & TreeMap和TreeSet的关系

java中的排序--排序容器_TreeSet与TreeMap

java TreeMap类

学习java第16天个人总结

Java中HashMap,LinkedHashMap,TreeMap的区别