一、实验内容:根据所学数据结构内容运用线性链表完成两个多项式的乘法运算 二、运行环境:visual C++
三、核心算法
creatBiTree(BiTree &T)
采用递归调用,根据先序遍历创建根结点,左子树和右子树,首先按字符表输入数据,判断该结点是否为空,若为空则退出该次调用,按提示递归并最终完成二叉树的创建.
四、源程序(带注释) #include using namespace std; typedef struct BiTNode //定义结点数据类型 { char data; struct BiTNode *lchild; struct BiTNode *rchild; }BiTNode; typedef BiTNode *BiTree; void InitBiTree(BiTree &T) //创建结点 { T=new BiTNode; T->lchild=NULL; T->rchild=NULL; } void creatBiTree(BiTree &T) //用递归调用创建二叉树 { char ch; cout<<\"请输入结点数据:\"; cin>>ch; if(ch==' ') //判断该结点是否为空,若为空,将该结点赋为空值 T=NULL; else //若不为空,则赋值并创建它的左子树和右子树 { InitBiTree(T); T->data=ch; creatBiTree(T->lchild); creatBiTree(T->rchild); } } void main() { BiTree T; creatBiTree(T); } 因篇幅问题不能全部显示,请点此查看更多更全内容