数据结构 树常见算法问题
程序员文章站
2022-05-19 18:55:53
...
数据结构,树常见算法
算法和问题来自于试卷,辅导书,以及网络。
// 树的数据结构
typedef struct { //树的双亲表示法
char data;
int parent; //双亲下标
}PTNode; //节点
typedef struct { //树的双亲表示法
PTNode node[Maxsize];
int n; //节点个数
}PTree;
//树的数据结构
typedef struct CSNode{ //树的双亲表示法
char data;
struct CSTNode *firstchild,*nextsibling; //双亲下标
}CSNode,*CSTree; //节点
算法4.2.1
编程求以孩子兄弟表示法存储的森林的叶子节点数
分析:略
int Leaves(CSTree T)
{
if(T==NULL)return 0;
if(T->firstchild==NULL)
return 1+Leaves(T->nextsibiling);
if(T->firstchild!=NULL)
return Leaves(T->nextsibiling)+Leaves(T->firstchild);
}
算法4.2.2
编程求以孩子兄弟表示法存储的树的深度
分析:略
int High(CSTree T)
{
if(T==NULL)return 0;
else
return(Max(1+High(T->firstchild),High(T->nextsibiling))));
}
上一篇: Android判断是否有网
下一篇: UITableView的一些小方法