PTA樹的同構

2021-10-09 02:10:41 字數 774 閱讀 4383

#include

#define maxtree 10

#define elementtype char

#define tree int

#define null -1

struct treenode

t1[maxtree]

,t2[maxtree]

;//定義陣列型別的資料

tree buildtree

(struct treenode t)

;int

isomorphic

(tree r1,tree r2)

;int

main()

tree buildtree

(struct treenode t)

else

t[i]

.left=null;

if(cr!=

'-')

else

t[i]

.right=null;}}

for(i=

0;i(!check[i]

)//沒被標記過的節點就是根節點

return i;

}int

isomorphic

(tree r1,tree r2)

雖然通過了測試,但心裡有個小疑問,我在buildtree函式中用了兩個if語句:if(n)和if(!n),但是我換成if(n)和else的話,就會有兩個測試用例出錯,如果有大佬看到能否幫忙解答一下呢,想知道這兩個有什麼區別。

PTA 樹的同構

給定兩棵樹t1和t2。如果t1可以通過若干次左右孩子互換就變成t2,則我們稱兩棵樹是 同構 的。例如圖1給出的兩棵樹就是同構的,因為我們把其中一棵樹的結點a b g的左右孩子互換後,就得到另外一棵樹。而圖2就不是同構的。圖1現給定兩棵樹,請你判斷它們是否是同構的。輸入給出2棵二叉樹樹的資訊。對於每棵...

PTA 樹的同構

cpp include define maxtree 11 define elementtype char define tree int define null 1 struct treenode t1 maxtree t2 maxtree tree buildtree struct treeno...

PTA習題 樹的同構

7 3 樹的同構 25 分 給定兩棵樹t1和t2。如果t1可以通過若干次左右孩子互換就變成t2,則我們稱兩棵樹是 同構 的。例如圖1給出的兩棵樹就是同構的,因為我們把其中一棵樹的結點a b g的左右孩子互換後,就得到另外一棵樹。而圖2就不是同構的。圖1 圖2 現給定兩棵樹,請你判斷它們是否是同構的。...