Visit函数是对数据元素操作的具体函数。
void Visit(TNode *node)
{
cout<<node->value<<" ";
}
这样的样子;或者,比如要交换每个节点的左右子树,那就是:
void Visit(TNode *node){
TNode *temp = node->left。
node->left = node->right。
node->right = temp。
比如要先序遍历,肯定要输出树上每个节点的数值吧。输出函数就可以写在Visit函数中的。那样程序运行之后,就可以输出二叉树的先序遍历了。
扩展资料:
线性表的双向链表存储结构:
typedef struct DuLNode{ElemType data;
struct DuLNode *prior,*next;
}DuLNode,*DuLinkList;带头结点的双向循环链表的基本操作:
void InitList(DuLinkList L)
{ /* 产生空的双向循环链表L */
L=(DuLinkList)malloc(sizeof(DuLNode));if(L)
L->next=L->prior=L;
elseexit(OVERFLOW);}重置链表为空表:
void ClearList(DuLinkList L) /* 不改变L */
{ DuLinkList q,p=L->next; /* p指向第一个结点 */
while(p!=L) /* p没到表头 */{q=p->next;free(p);p=q;}L->next=L->prior=L; /*头结点的两个指针域均指向自身 */}验证是否为空表:
Status ListEmpty(DuLinkList L){ /* 初始条件:线性表L已存在if(L->next==L&&L->prior==L)
return TRUE;
elsereturn FALSE;}参考资料来源:百度百科-双向链表
推荐于2017-11-25
2015-06-26
2013-10-12