您的位置:首页 > 其它

树的实现遍历及应用

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;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: