首页 > 编程知识 正文

python数据结构链表,二叉链表存储结构

时间:2023-05-04 19:47:38 阅读:159115 作者:4322

7-20双链接列表(20分) ) ) )。

设计了先建立二叉树二叉树链表的程序; 然后,按照先后顺序、中顺序、后顺序遍历二叉树。

输入格式:先输入二叉树。 二叉树中每个节点的键值由字符表示,字符之间不包含空格。 还提供空树的信息,注意用#字符表示空树。

输出格式:输出三行。 第1行是先遍历二叉树的系列,第2行是中顺序遍历二叉树的系列,第3行是后顺序遍历二叉树的系列。 每行不能有多余的空格。 序列中不包含#。

输入样本: ab##dc###输出样本: abdcbacdbcda

# include stdio.h # include stdlib.htypedefcharelementtype; typedef struct TNode *Position; 类型定位二进制树; struct TNode {ElementType Data; 二进制左; BinTree Right; (; BinTree CreatBinTree (()/)二叉树链表BinTree B; char cp; scanf('%c”,cp ); if(CP=='# ' ) b=(bintree ) malloc (sizeof (struct tnode ) ); //B=NULL; B-Data='# '; B-Left=B-Right=NULL; }else{b=(bintree ) malloc ) sizeof ) structtnode ); B-Data=cp; B-Left=CreatBinTree (; B-Right=CreatBinTree (; }return B; } voidpreorderprintleaves1(bintree Bt )//先if ) Bt-data!='# ' ) {printf('%c ',BT-Data ); preorderprintleaves1(Bt-left; preorderprintleaves1(Bt-right; } voidpreorderprintleaves2(bintree Bt )//中if ) Bt-data!=' # ' } { preorderprintleaves2(Bt-left ); printf('%c ',BT-Data ); preorderprintleaves2(Bt-right; } voidpreorderprintleaves3(bintree Bt )//后if ) Bt-data!=' # ' } { preorderprintleaves3(Bt-left ); preorderprintleaves3(Bt-right; printf('%c ',BT-Data ); }}int main () {BinTree BT=CreatBinTree ); preorderprintleaves1(Bt; 打印((n ); preorderprintleaves2(Bt; 打印((n ); preorderprintleaves3(Bt; 打印((n ); 返回0; }

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。