java - 通过 BST 实现字典

标签 java dictionary implementation binary-search-tree

你好,我是java新手,我需要通过二叉搜索树实现一个字典,但我真的不知道从哪里开始。 我必须在这本字典中存储一些具有姓名和年龄的学生。 因此,在 BST 中,我将存储年龄,但是我在哪里存储学生的姓名以及如何将姓名与年龄字段连接起来。

如果您有类似这样的实现示例,我将不胜感激,不一定是所有代码,而只是开始,这样我就可以开始了。如果您没有 Java 代码,C++ 代码也不错。

最佳答案

字典是一种将键映射到值并允许查询给定键的值的数据结构。二叉搜索树还具有键(用于搜索),并且还可以具有进一步的有效负载数据(值)。因此,带有有效负载数据的 BST 实际上已经是一个字典。

因此,首先编写一个常用的 BST 实现(参见维基百科的简单实现,例如 http://en.wikipedia.org/wiki/Binary_search_tree )。向节点添加有效负载属性。添加一个函数 lookup(key),该函数将首先使用键 key 搜索节点(使用通常的 BST 查找)并返回该节点的有效负载属性。瞧,你的字典就到了。

关于java - 通过 BST 实现字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12952571/

相关文章:

java - 为什么我的代码不正确(处理字符串)?

python - 如何解决这个问题?运行时错误: dictionary changed size during iteration

c - 是否存在没有依赖关系的 C 哈希函数?

C++ 堆栈推送/打印实现

java - 无法在java中调用方法

java - 简单的 Java TCP 服务器和 PHP 客户端问题

java - Android .aar 库接口(interface)参数名称丢失

python - 动态创建嵌套字典

java - 如何初始化Map<Integer, Map<Integer, Float>>?

Java - 引用实现与 3d 方供应商提供的实现