在 c++/python/java 中内置抽象数据类型
Posted
技术标签:
【中文标题】在 c++/python/java 中内置抽象数据类型【英文标题】:built in Abstract Data Types in c++/python/java 【发布时间】:2012-07-26 18:28:32 【问题描述】:到目前为止,我一直在使用 C 编程,这是一种非常基础的语言。但是现在我在学习数据结构的时候,我的在线老师实际上使用了一些方法,比如leftChild()、rightChild()等。 但后来我开始搜索树 ADT 等是否用 C++、Python、Java 实现 默认情况下。大多数人的答案是否定的。
我只是想确认是否有任何语言默认支持树 ADT,这意味着无需单独下载它们的类。
【问题讨论】:
C++ 使用比tree
更抽象的接口。它使用searchable container
和set
。
c++ 是否包含直接使用树的方法或任何其他语言默认安装其编译器而无需进一步下载的情况下具有此功能
正如我所说,接口比tree
更抽象。该接口可以使用tree
实现,也可以不实现。但是,接口的实现是作为标准 C++ 库的一部分提供的,主要在 STL 中。
普通的非平衡树不是一个非常有用的数据结构,您可以轻松地自己制作。您提到的语言确实支持基于平衡二叉搜索(通常是红黑)树的数据结构。例如,Java 有 TreeMap 和 TreeSet。
@user1139048:你为什么问这个问题?你为什么关心它是否是标准库的内置/一部分?
【参考方案1】:
C++ 中的许多 STL 容器通常使用树来实现。示例包括 std::map
和 std::set
【讨论】:
【参考方案2】:这些是基本的 ADT。我认为您应该先学习并自己编写代码,然后再进入任何具有这些内置功能的库。
谢谢
【讨论】:
以上是关于在 c++/python/java 中内置抽象数据类型的主要内容,如果未能解决你的问题,请参考以下文章