基于二叉链表的二叉树的嵌套括号表示
Posted 井小普
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于二叉链表的二叉树的嵌套括号表示相关的知识,希望对你有一定的参考价值。
#include <iostream> using namespace std; //二叉树的数据结构定义 typedef struct node{ char data; struct node *lchild,*rchild; }BTNode,*BTREE; void create(BTREE &T); void match(BTREE T); int main(int argc, const char * argv[]) { BTREE T; create(T); match(T); cout<<endl; return 0; } //先序遍历创建二叉树,输入0代表结点为空 void create(BTREE &T){ char ch; cout <<"请输入"<<endl; cin>>ch; cout<<endl; if(ch==\'0\') T==NULL; else{ T = new BTNode(); //T = (BTREE)malloc(sizeof(BTNode)); T->data = ch; create(T->lchild); create(T->rchild); } } //匹配规则 void match(BTREE T){ if(T) { cout<<T->data; if(T->lchild&&T->rchild) { cout<<"("; match(T->lchild); cout<<","; match(T->rchild); cout<<")"; } else if(T->lchild&&T->rchild==NULL) { cout<<"("; match(T->lchild); cout<<","; cout<<")"; } else if(T->lchild==NULL&&T->rchild) { cout<<"("; cout<<","; match(T->rchild); cout<<")"; } } }
以上是关于基于二叉链表的二叉树的嵌套括号表示的主要内容,如果未能解决你的问题,请参考以下文章
数据结构 二叉树 用二叉链链表存储结构 写出删除二叉树所有的叶子节点的算法
1、创建一棵二叉树,以二叉链表作存储结构,实现先根遍历算法 2、创建一棵二叉树,实现先根遍历算法、中根