作者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