作者ric2k1 (Ric)
看板EE_DSnP
標題Re: [問題] for_each_sink()
時間Wed Jun 3 20:34:49 2009
※ 引述《yea107 (ㄚ隆)》之銘言:
: 我想請問一下在投影片p23~28中
: Depth -First Traversal 的部分
: 其中有兩個函式
: for_each_sink(node,sinkList)
這個應該改成 for_each_source(node, sourceList)
我上課有更正, 不過可能沒說清楚.
: 和
: for_each_successor(next,_successors)
: 是要做什麼的呢??
: 還有如果按照老師的程式
: →C
: A→B─│
: →D
如圖, A is a source, and B is its successors.
: 是不是只會走到C而不會走到D呢??
: 應該是我看不懂...請問從C走到D的機制可以幫我解釋一下嗎??
: 不好意思...這邊我實在不太了解...
When this Node is B, for_each_successor(next,_successors) will recur
on C and D. That is, after C and its subgraph has been traversed (visited),
the recursive call will come back and the for loop will contiue on D.
Hope this is clear.
In homework #6, you need to (revised slide #23):
Circuit::dfs()
{
for_each_po(po, poList)
po->dfs(dfsList);
}
Gate::dfs(List& dfsList)
{
for_each_fanin(fanin, faninList)
fanin->dfs(dfsList);
dfsList.push_back(this);
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.224.47.135
1F:推 yea107:請問老師為什麼for_each_po後面沒有" ; " 呢?? 06/03 22:36
2F:→ ric2k1:';'? 加在哪裡? 我上面的 code 只是示意而已, 並非真正 C++ 06/03 23:38
3F:推 yea107:喔喔!!我了解了!!感謝老師~~ 06/03 23:49