作者FATCLOUD (A Cloud)
看板EE_DSnP
标题[问题] 能够不用 _parent 做出 iterator++ 吗?
时间Thu May 21 00:29:17 2009
听说教授写的 BSTreeNode 里面没有 _parent 这个成员
刚刚在写我也试着写不要用 _parent 的 BSTree
可是在写到 iterator 的 ++ overloading 时
遇到了一个问题
那就是在 iterator 这个 class 里
我不能直接呼叫 _root 这种东西
因为在一个程式里
我们可以宣告很多个 BSTree
而通常一个 iterator 指向的 BSTreeNode 并不知道自己属於那一棵 Tree
所以如果我没头没脑的就叫程式从 _root 开始寻找某个 Node 的 Parent
那马上就会面临一个问题就是
每棵树都有一个 _root
不知道要找哪棵树才对
我很好奇老师是怎麽跨越这个问题的
或者是有其他的同学不用 _parent 就做出了 iterator ++ 可以代为解说吗? @@
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.4.235
1F:推 Peter034:不是只有一棵树吗 XD 05/21 00:33
2F:→ Peter034:我前几篇刚问过相同的问题 可以参考一下推文的做法 05/21 00:34
3F:→ FATCLOUD:感觉还是要能支援多棵树才是好的 @@ 05/21 01:52
4F:→ FATCLOUD:多谢楼楼上...另提供一个只能用一棵树的作弊法 05/21 01:52
5F:→ FATCLOUD:就是加一大堆 static 让一些函数和变数成员都给大家共用 05/21 01:53
6F:→ FATCLOUD:这样就不用分哪棵树了XD 05/21 01:54
7F:推 timrau:翻了STL的source code,发现它有用_parent... 05/21 02:10
8F:推 ric2k1:请见 Homework 说明最後一页 4(iii) 05/21 07:08