甄志坚的编程日记jan365.blog.chinaunix.net
Jan365
全部博文(23)
2011年(2)
2010年(3)
2008年(18)
teloser
haoque67
wxdlzl
观辰_sup
superqyl
Freewill
pangzong
zhuhuadu
liying10
zhangm81
分类:
2008-07-19 02:19:39
typedef struct bitnode//树形结构 { int data; struct bitnode *lchild,*rchild; }bitnode,*bitree; int preordertraverse(bitree t)//前序遍历 { if(t) { cout<<t->data<<" "; preordertraverse(t->lchild);//遍历左子树 preordertraverse(t->rchild);//遍历右子树 } return 1; } int inordertraverse(bitree t)//中序遍历 { if(t) { inordertraverse(t->lchild);//遍历左子树 cout<<t->data<<" "; inordertraverse(t->rchild);//遍历右子树 } return 1; } int postordertraverse(bitree t)//后序遍历 { if(t) { postordertraverse(t->lchild);//遍历左子树 postordertraverse(t->rchild);//遍历右子树 cout<<t->data<<" "; } return 1; } int inordertraverse2(bitree t)//中序遍历二叉树,非递归 { sqstack s; bitree p; initstack(s); p=t; while(p||s.top!=s.base) { if(p)//往左走到尽头 { push(s,p); p=p->lchild; } else { pop(s,p);//当前结点出队 cout<<p->data<<" "; p=p->rchild;//右孩子入队 } } return 1; }
上一篇:多重引导程序(MBR)
下一篇:顺序循环队列
chinaunix网友2008-07-23 13:09:06
很好
登录 注册