
1.撰寫演算法函式int equal(tree t1, tree t2),判斷兩棵給定的樹是否等價;
int equal(tree t1,tree t2)
{ int k; if(t1==NULL&&t2==NULL)
return TRUE; elseif(t1!=NULL&&t2==NULL||t1==NULL&&t2!=NULL)
{ return FALSE;
}elseif(t1->data!=t2->data)
{return FALSE;
}for(k=0;kchild[k],t2->child[k]);
if(equal(t1->child[k],t2->child[k])==FALSE)
{return FALSE;
}else
return TRUE;}}
2. 撰寫演算法函式void preorder(bintree t)實作二叉樹t的非遞回前序遍歷;
void preorder1(bintree t)
{ seqstack s;
init(&s);
while(t||!empty(&s))
{ if(t) {
printf("%c",t->data);
push(&s,t);t=t->lchild;
}elseif(!empty(&s))
{t=pop(&s);t=t->rchild;
}18}
3.撰寫演算法函式degree(LinkedGraph g)輸出以鄰接表為存盤結構的無向圖的各頂點的度,
void degree(LinkedGraph g)
{ int k; int n; EdgeNode *p;
for(k=0;knext; }
if(k==0)
{printf("%d\n",n);
}else {printf("%d\n",n);} }}
以上就介紹了資料結構(C語言)關于樹、二叉樹、圖的基本操作,希望有所幫助,
如果你也想成為程式員,想要快速掌握編程,趕緊關注小編加入學習企鵝圈子吧!
里面有資深專業軟體開發工程師,在線解答你的所有疑惑~編程語言入門“so easy”
資料包含:編程入門、游戲編程、課程設計等,
免費學習書籍:

免費學習資料:

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/252897.html
標籤:C
下一篇:c語言學習教程1之預定義代碼
