資料結構 判斷鏈式二叉樹是否相同

2021-09-06 09:20:50 字數 1491 閱讀 6560

本文主要描述判斷兩個鏈式二叉樹是否相同,所謂相同,結構要相同,節點的值也要相同。

struct bitreenode *bitreeprt;
typedef bitreeprt bitree;

struct bitreenode
;

int like( bitree t1, bitree t2 )
}

bitree t1 = null, t2 = null, t3 = null;
int i,n;
telementtype a1 = ;
telementtype a2 = ;
telementtype a3 = ;
i=0;
n=7;
t1 = createbitreearray(a1, &i, n);
printf("\nt1 二叉樹\n");
printf("先序遍歷:(高度 %d),是否為空 %d\n", bitreedepth(t1));
bitreepreorder(t1, printbitree);
printf("\n--end.\n\n");
i=0;
n=7;
t2 = createbitreearray(a2, &i, n);
printf("\nt2 二叉樹\n");
printf("中序遍歷:(高度 %d),是否為空 %d\n", bitreedepth(t2));
bitreeinorder(t2, printbitree);
printf("\n--end.\n\n");
i=0;
n=7;
t3 = createbitreearray(a3, &i, n);
printf("\nt3 二叉樹\n");
printf("後序遍歷:(高度 %d),是否為空 %d\n", bitreedepth(t3));
bitreepostorder(t3, printbitree);
printf("\n--end.\n\n");
printf("\nt1 和 t2 是否相同:%d\n", like(t1, t2));
printf("\nt2 和 t3 是否相同:%d\n", like(t2, t3));
makeemptybitree(t1);
makeemptybitree(t2);
makeemptybitree(t3);

判斷二叉樹是否相同

判斷二叉樹是否相同 當root1的左子樹與root2的左子樹相同,root1的右子樹與root2的右子樹相同時,這兩顆二叉樹相同。當root1的左子樹與root2的右子樹相同,root1的右子樹與root2的左子樹相同時,這兩顆二叉樹同樣相同。1 bool isequals bnode root1,...

資料結構 鏈式二叉樹

include using namespace std typedef struct treenode treenode,treep 初始化二叉樹 void init tree treep root 前序遍歷二叉樹 void pre order treep rt 中序遍歷二叉樹 void mid o...

資料結構 鏈式二叉樹

define error 0 define true 1 define false 0 status是函式的型別,其值是函式結果狀態 如ok等 typedef int status typedef int telementtype ifndef bitree h included define bi...