树的实现遍历及应用
2015-07-10 20:38
330 查看
//树的结构
typedef struct _TreeNode
{
int data;//节点的数据
struct TreeNode* FirstChild;//第一个孩子
struct TreeNode* NextSibling;//孩子的兄弟
}TreeNode;
//LINUX下先序遍历打印目录
void ListDirectory(Directory D)
{
ListDir(D,0);
}
static void ListDir(Directory D,int Depth)
{
if(D is a legitimate Directory)
{
PrintName(D,Depth);
if(D is a Directory)
{
for each child C,of D
ListDir(C,Depth+1);
}
}
}
//后续遍历计算目录大小
static int SizeDirectory(Directory D)
{
int TotalSize = 0;
if(D is a legitimate Directory)
{
TotalSize = FileSize(D);
if(D is a Directory)
{
for each child C,of D
TotalSize +=SizeDirectory(C);
}
}
return TotalSize;
}
typedef struct _TreeNode
{
int data;//节点的数据
struct TreeNode* FirstChild;//第一个孩子
struct TreeNode* NextSibling;//孩子的兄弟
}TreeNode;
//LINUX下先序遍历打印目录
void ListDirectory(Directory D)
{
ListDir(D,0);
}
static void ListDir(Directory D,int Depth)
{
if(D is a legitimate Directory)
{
PrintName(D,Depth);
if(D is a Directory)
{
for each child C,of D
ListDir(C,Depth+1);
}
}
}
//后续遍历计算目录大小
static int SizeDirectory(Directory D)
{
int TotalSize = 0;
if(D is a legitimate Directory)
{
TotalSize = FileSize(D);
if(D is a Directory)
{
for each child C,of D
TotalSize +=SizeDirectory(C);
}
}
return TotalSize;
}
相关文章推荐
- POSIX定时器:timer_settime()的使用
- win7中如何解决“该项不适用于在指定状态下使用”
- Web服务器开发
- java.net.UnknownHostException 异常处理
- openrefactory/c笔记 (一)
- 最大似然估计(MLE)和最大后验概率(MAP)
- 关于ios6 ios7地图使用权限提示框不弹出的原因
- java多线程------
- 集合的位图表示(C语言描述)
- jquery 完成checkbox的全选功能
- Mitmproxy首页、文档和下载 - 支持SSL的HTTP代理 - 开源中国社区
- J2EE设计模式——MVC
- MySQL表损坏:Table XXX is marked as crashed and should be repaired
- Java三大修饰符
- Blog Contents
- iOS接地气的面试题
- c++ primer读书笔记-第十二章 类
- Java面向对象知识点
- UML九种图汇总
- 关于最短增广路算法和连续最短增广路算法的操作步骤