数据结构 树的结构体定义 在线等!!

图片说明

如图所示

(1)第一行typedef struct node 的那个node 什么时候写 什么时候不写?

(2)最后括号外面的 BiNode ,*BiTree 分别是什么作用?

(1)node表明的是这个结构体的名字,建议一般都写上,因为如果之后需要用的时候,也可以直接使用这个名字来进行定义,比如说: node nod1;
(2)BiNode表示的是用node定义的一个node节点,那么在需要操作这个里面的数据的时候用‘.’就能操作,比如说:BiNode.value , BiNode.data;
Bitree表示的是node指针,这个指针可以用来指向一个node,比如说你之后在用的时候,可以:Bitree = new node(); 表明让Bitree指针指向一个新建的node对象(其实就是一块内存控件,在c++中可以说是对象),之后操作的时候就可以:Bitree->value, Bitree->data 。

第一行的typedef struct node意思是定义一个名为node的结构体。在定义结构体的时候都要这样声明,而最后面的是二叉树节点跟二叉树指针的意思