用数组模仿树结构
来源:互联网 发布:unity3d插件怎么用 编辑:程序博客网 时间:2024/05/16 17:47
/**
* 用数组模仿树结构,原则是左小右大
* treeArr.c
* version:1.0 2006-9-15
* writeby jsp
*/
#include "stdio.h"
void creat(int *nodlist , int *b_tree , int len)
{
int lay,i;//lay 层
b_tree[1] = nodlist[1];
for(i = 2; i < len; i++)
{
lay = 1;
while( b_tree[lay] != 0)//用于判断b_tree[lay]这个节点是否为空如果为空就把nodlist[i]付给它;
{
if(nodlist[i] > b_tree[lay])//判断是左子树还是右子树.如果b_tree[lay]不为空则找b_tree[lay]的子节点
lay = 2 *lay+1;//下个右叶节点
else
lay = 2 *lay;//下个左叶节点
}
b_tree[lay] = nodlist[i];
}
}
void main()
{
int i,index; //index用于存放输入数组的索引号,i循环变量
int data;
int nodlist[16];//输入数组
int b_tree[16];//树结构
index = 0;
for(i = 0 ; i < 16; i++)
{
nodlist[i]=0;
}
do
{
index+=1;
scanf("%d",&data);
nodlist[index] = data;
}while(data != 0);
for(i = 1; i < 16; i++)
{
b_tree[i] = 0;
}
creat(nodlist , b_tree , index);
for(i = 1; i < 16; i++)
{
printf("[%d]:%d/n",i,b_tree[i]);
}
}
- 用数组模仿树结构
- 用结构模仿堆栈实例
- 模仿TreeView结构的树结构类
- 用结构数组仿树形结构
- php开发socket模仿c/s结构
- 采用多重继承模仿文档视图结构
- 用结构体数组计算
- 用数组的方式来模仿jquery 的$选择器getClassName(ParId,S_ClassName)[i];
- 超级数组,list底层实现模仿
- 自定义方法,模仿each遍历多维数组
- 结构数组
- 数组结构
- 数组结构
- 结构数组
- 模仿列表树控件
- 用JS模仿DataGrid
- 用控制台模仿12306
- 模仿
- 呜呼哀哉,呛晕了
- 炒猪肝
- java的值传递和引用传递问题
- 如何得到下拉数据窗口的显示值
- .NET设计模式之工厂方法模式
- 用数组模仿树结构
- Blog开张
- blog开张
- Start XtraGrid
- .net企业应用高级编程 第五章 自动化处理和事务处理(基于C# XML)案例
- 为了健康,不要带「别人的老婆或老公」睡觉...
- SOLARIS
- JAVA最简单常识
- 关于Lotus边缘技术的讨论