C語言 資料結構C語言版 實驗7 二叉樹

2021-10-11 18:45:11 字數 2444 閱讀 7477

/*

編寫演算法函式void preorder1(bintree t)實現二叉樹t的非遞迴前序遍歷。

*/#include "bintree.h"

char *a="abc##d#e##f##"; /*擴充二叉樹序樹t的前序序列*/

/*函式preorder1()的功能是非遞迴前序遍歷二叉樹t,請將函式補充完整並除錯執行*/

void preorder1(bintree t)

else

}}int main()

/*

編寫演算法函式void levelbintree(bintree t),實現二叉樹的層次遍歷。

*/#include "bintree.h"

char *a="abc##d#e##f##"; /*擴充二叉樹序樹t的前序序列*/

void levelbintree(bintree t)

}int main()

/*

編寫函式bintree prelist(bintree t),bintree postfirst(bintree t),

分別返回二叉樹t在前序遍歷下的最後乙個結點位址和後序遍歷下的第乙個結點位址。

*/#include "bintree.h"

char *a="abc##d##ef#g###"; /*擴充二叉樹序樹t的前序序列*/

bintree prelast(bintree t)

else}}

return p; //返回前序序列最後乙個結點g

}bintree postfirst(bintree t)

else}}

return p;//返回後序序列第乙個結點 c

}int main()

else printf("二叉樹為空!");

return 0;

}

/*

假設二叉樹採用鏈式方式儲存,t為其根結點,編寫乙個函式int depth(bintree t, char x),求值為x的結點在二叉樹中的層次。

*/#include "bintree.h"

char *a="abc##d##ef#g###"; /*擴充二叉樹序樹t的前序序列*/

/* 函式depth,功能:求結點x所在的層次

*/int depth(bintree t,char x)

else

num1=depth(t->lchild,x);

num2=depth(t->rchild,x);

n=num1+num2; //num1和num2之中必有乙個為0

if(num1!=0||num2!=0) //找到了x ,往回數

}return n;

}int main()

/*

試編寫乙個函式,將一棵給定二叉樹中所有結點的左、右子女互換。

*/#include "bintree.h"

char *a="abc##d##ef#g###"; /*擴充二叉樹序樹t的前序序列*/

/*請將本函式補充完整,並進行測試*/

void change(bintree t)

}int main()

/*

試編寫乙個遞迴函式bintree buildbintree(char *pre, char *mid, int length),

根據二叉樹的前序序列pre、中序序列mid和前序序列長度length,構造二叉樹的二叉鍊錶儲存結構,

函式返回二叉樹的樹根位址。

*/#include "bintree.h"

#include char *a="";

/*請將本函式補充完整,並進行測試*/

bintree buildbintree(char *pre, char *mid,int length)

else

return null;

return t;

}int main()

/*bintree.h標頭檔案*/

#include#include#define n 100

extern char *a;

typedef struct node

binnode;

typedef binnode *bintree;

/*函式creatbintree(根據擴充二叉樹的前序序列(字元a)建立二叉樹t的儲存結構)*/

binnode creatbintree()

return t;

}

資料結構(C語言版)

用棧實現數字的進製轉換 10轉8 棧 限定只能在表尾進行插入或者刪除操作的線性表 特點 先進後出 儲存表示方法 順序棧和鏈棧 本文用的順序棧 實現 readonly name code class c include include define stack init size 100 儲存空間初始...

《資料結構(C語言版)》綜述

第一章 緒論 將於4月20日學習完畢,含課後題以及資料練習題 1.1什麼是資料結構 1.2基本概念和術語 1.3抽象資料結構型別的表示與實現 1.4演算法和演算法分析 1.4.1演算法 1.4.2演算法設計的要求 1.4.3演算法效率的度量 第二章 線性表 2.1線性表的型別定義 2.2線性表的順序...

讀資料結構(C語言版)

資料 資料是對現實世界物質的符號表示,在計算機中的意思是能輸入到計算機中進行計算處理的符號為資料 實現是客觀世界在計算機中的表示方式,是程式加工的原材料。資料可以是聲音,文件 資料元素 組成資料的基本構成單位,通常以結構化的形式出現,比如一本書的書目資訊,包含作者,書名,出版刊號,出版社這些資料項,...