作者hoghcmkcm (HOG)
看板EE_DSnP
標題[問題] hw6 cirp -n 的順序
時間Sat May 31 01:02:10 2008
問一下
我在存 _piList的時候
都是用 _piList.insert( _piList.begin(), ptr );
沒有排序
所以在跑cirp -n 不是從最小的input開始@@
然後
我有點分不清
是先跑完AND 再去跑 PO嗎?
不過有時候又看到AND沒跑完就 從AND連到PO
PI(1)
PI(2)
AND(6) = PI(1) && PI(2)
AND(7) = !PI(1) && !PI(2)
AND(3) = !AND(6) && !AND(7)
PO(3) = AND(3)
PO(6) = AND(6)
像這個是先跑AND
PI(1)
PI(4)
AND(6) = PI(1) && PI(4)
PO(6) = AND(6)
AND(7) = !PI(1) && !PI(4)
AND(3) = !AND(6) && !AND(7)
PO(3) = AND(3)
這個又變成AND完跑到PO@@
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.168.73.234
※ 編輯: hoghcmkcm 來自: 218.168.73.234 (05/31 01:08)
1F:→ bnsblue:一個要點就是已經被印出來的就不會再印一次 05/31 11:27
2F:→ bnsblue:必然是先跑PO 從PO裡面進去做post-order DFS 05/31 11:27
3F:→ bnsblue:比如說像第一個 是先跑PO(3)然後進去之後會經過AND(3) 05/31 11:29
4F:→ bnsblue:接著是AND(6) AND(7) -> PI(1) PI(2) 05/31 11:30
5F:→ bnsblue:而這個po traverse完之後 開始跑下一個po(6)但發現and(6) 05/31 11:30
6F:→ bnsblue:已經跑過了就不會再往AND(6)的fanin去跑了 05/31 11:31