首页 文章

为什么键而不仅仅是二叉搜索树中的值?

提问于
浏览
2

为什么BST上的操作(搜索,删除,获取,最小,最大,楼层,上限,等级等)都使用键而不是值?我们是否无法存储 Comparable 值并对其进行操作?在BST中拥有密钥有什么好处?

1 回答

  • 2

    你绝对可以构建一个只使用值而不是键的BST . 一般来说,在谈论数据结构时,我们倾向于使用独立于任何特定编程语言的术语 . 例如,C没有 Comparable 接口,并且您在C中对类型进行比较的方式看起来与Java完全不同 .

    "keys"和"values"的想法是在高层次上讨论树存储一组被排序的事物(键)以及每个键具有相关值的想法 . 实际实现的方式可能是使用单个 Comparable 对象来存储键和值,或者只是一个没有值的键 . 但是,从Theoryland的角度来看,能够单独讨论这些概念是很好的,这样我们就可以推断数据结构如何在高层次上工作,而不必担心存储的各个事物背后的实现细节 .

相关问题