穿线二叉树(注释了一些有用的解释)
来源:互联网 发布:mac如何登陆apple id 编辑:程序博客网 时间:2024/04/30 08:27
typedef char datatype;
typedef struct node{
datatype data;
struct node *lchild,*rchild;
}bintnode;
typedef bintnode *binthrtree;
binthrtree root;
binthrtree pre=NULL;
void createbintree(binthrtree *t)
{char ch;
if((ch=getchar())==' ')
*t=NULL;
else{
*t=(binthrnode *)malloc(sizeof(binthrnode));
(*t)->data=ch;
createbintree(&(*t)->lchild)); //引用传递,要看清
createbintree(&(*t)->rchild));
}
}
void inthreading(binthrtree *p)
{if(*p)
{inthreading(&((*p)->lchild)); //按照中序遍历先对左子树穿线遍历
(*p)->ltag=((*p)->lchild)?0:1;
(*p)->rtag=((*p)->rchild)?0:1;
if(pre) //如果前序结点存在
{if(pre->rtag==1) pre->rchild=*p;
if((*p)->ltag==1) (*p)->lchild=pre;
}
pre=*p; //中序向前遍历下一个结点(链式存储)
inthreading(&((*p)->rchild));
}
}
void createthrtree(binthrtree *p)
{createbintree(p);
inthreading(p);
}
- 穿线二叉树(注释了一些有用的解释)
- 二叉树的递归穿线实现
- 穿线二叉树
- 穿线二叉树
- 二叉搜索树(二叉穿线树)抽象结构以及线索化算法
- H264中一些很有用的解释
- 对称序穿线树的实现
- 整理了一些有用的js方法
- ros:global_planner 整体解析 解释了全局规划的多种实现原因(挺有用)
- 加了一些注释的skelix
- 一些开源项目中注释文件的解释
- 二叉树遍历的解释
- 关于哈夫曼树的一些总结--(总是要和完全二叉树和满二叉树搞混了 = =)
- 线索二叉树(解释)
- 收集了一些我认为有用的Flex 组件
- 你的注释有用吗?
- 二叉搜索树的学习笔记(有解释)
- 整理一些有用的网页(原创)
- s7200 定时执行
- Java的网络知识
- 小心vs2005
- 男人撒娇的十个关键词
- Linux学习流水帐之二
- 穿线二叉树(注释了一些有用的解释)
- 首开
- xp的终极优化
- 欢迎大家光临我的博客!
- ASP.NET技术的学习顺序问题
- JSP中用函数标签
- 6.11
- 客户订单输入体验
- 使用非2次方幂的图像纹理的问题