还剩5页未读,继续阅读
文本内容:
实验报告课程名数据结构(C语言版)实验名二叉排序树姓名班级学号撰写时间
2014.
12.18一实验目的与要求
1.掌握二叉排序树上进行插入和删除的操作
2.利用C语言实现该操作二实验内容•对于一个线形表利用不断插入的方法建立起一株二叉排序树•从该二叉排序树中删除一个叶子节点一个只有一个子树的非叶子节,一个有两个子树的非叶子节点三实验结果与分析#includestdio.h#includestdlib.h//二叉查找树结点描述typedefintKeyType;typedefstructNode{KeyTypekey;//关键字structNode*left;//左孩子指针structNode*right;//右孩子指针structNode*parent;//指向父节点指针}Node*PNode;//往二叉查找树中插入结点//插入的话,可能要改变根结点的地址,所以传的是二级指针voidinseartPNode*rootKeyTypekey{//初始化插入结点PNodep=PNodemallocsizeofNode;p-key=key;p-left=p-right=p-parent=NULL;//空树时,直接作为根结点if*root==NULL{*root=p;return;}//插入到当前结点(*root)的左孩子if*root-left==NULL*root-keykey{p-parent=*root;*root-left=p;return;}//插入到当前结点(*root)的右孩子if*root-right==NULL*root-keykey{p-parent=*root;*root-right=p;return;}if*root-keykeyinse...。