二叉搜索树方法有标准吗?
Are there standard for Binary Search Tree methods?
我正在用 C++ 实现 BST,我实现了 Get()、Add()、Remove() 和 Contains() 方法。我知道有些容器有标准,例如堆栈有 push() 和 pop() 方法。但是我找不到任何关于 BST 标准方法的文档?
是否有标准方法(如接口)或由我们决定?
最终,由您决定。 C++ 没有为任何东西定义标准接口。
也就是说,STL 会回收访问器名称。
Set 和 map 可能是与您的 BST 最相似的数据结构。
集合使用 insert()
,count()
告诉您集合是否包含一个项目,erase()
删除一个项目。
Map 除了提供 insert()
外,还使用 operator[]
(方括号)和 at()
来访问和设置元素。 erase()
用于删除一个元素。
因此,从这个意义上说,存在某种标准化,但它特定于 STL 和那些模仿它的人。但是,STL 的使用非常广泛,因此如果您有任何想要模仿的东西,那就是它。
我正在用 C++ 实现 BST,我实现了 Get()、Add()、Remove() 和 Contains() 方法。我知道有些容器有标准,例如堆栈有 push() 和 pop() 方法。但是我找不到任何关于 BST 标准方法的文档?
是否有标准方法(如接口)或由我们决定?
最终,由您决定。 C++ 没有为任何东西定义标准接口。
也就是说,STL 会回收访问器名称。
Set 和 map 可能是与您的 BST 最相似的数据结构。
集合使用 insert()
,count()
告诉您集合是否包含一个项目,erase()
删除一个项目。
Map 除了提供 insert()
外,还使用 operator[]
(方括号)和 at()
来访问和设置元素。 erase()
用于删除一个元素。
因此,从这个意义上说,存在某种标准化,但它特定于 STL 和那些模仿它的人。但是,STL 的使用非常广泛,因此如果您有任何想要模仿的东西,那就是它。