Re: [理工] 100中央(DS&ALGO)

看板Grad-ProbAsk作者 (秋天的風)時間14年前 (2012/01/15 21:39), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串4/4 (看更多)
純分享1.2 bool IsCycleExist(Node *root) { Node* l,r; l = root->left; r = root->right; if(root == Null) return False; else if(root->value != -1) return True; else{ root->value = -1; return (IsCycleExist(root->left)||IsCycleExist(root->right)); } 想法是讓他左右子樹一直遞迴下去,每遞迴一次就把值設成-1 一檢查到有value為-1的node 就return false 再將左右子樹的結果OR起來 就會是答案 是用BFS概念寫的 不過跑完之後值就會都變成-1 這是在不改變他資料結構的前提下 我盡力想出來的方法@@" -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.32.185.168 ※ 編輯: w29697146 來自: 114.32.185.168 (01/15 21:40) ※ 編輯: w29697146 來自: 114.32.185.168 (01/15 21:41) ※ 編輯: w29697146 來自: 114.32.185.113 (01/30 22:10)

01/06 12:14, , 1F
else if (root->value==-1)才是代表有visit過吧?
01/06 12:14, 1F
文章代碼(AID): #1F4jSCY1 (Grad-ProbAsk)
文章代碼(AID): #1F4jSCY1 (Grad-ProbAsk)