二叉链表:用链表来表示一棵二叉树
链表中的每个节点由三个域组成,data域包含j节点的数据信息,lChild和rChild分别包含指向左孩子和右孩子的指针。
节点定义
类nodet { nodet lchild; T data; NodeT rChild; Node ) {data=null; lChild=null; rChild=null; }nodetx ) {data=x; lChild=null; rChild=null; }创建空二叉树
BinaryTree ) {root=new NodeT ); 生成二叉树
二进制树tx ) root=newnodet ); }插入左侧的子节点
Booleaninsertlefttx,NodeT parent ) if ) parent==null { return false; }nodetp=newnodetx; parent.lchild==null ) {parent.lChild=p; }else{p.lChild=parent.lChild; parent.lChild=p; }return true; }插入右边的孩子节点
booleaninsertrighttx,NodeT parent ) if ) parent==null { return false; }nodetp=newnodetx; parent.rchild==null ) {parent.rChild=p; }else{p.rChild=parent.rChild; parent.rChild=p; }return true; 删除左边的子树
booleandeleteleftnodetparent ) if ) parent==null { return false; }else{parent.lChild=null; 返回真; }-删除右子树
Booleandeleterightnodetparent ) if ) parent==null ) {return false; }else{parent.rChild=null; 返回真; }