数据结构算法设计

来源:百度知道 编辑:UC知道 时间:2024/07/04 23:23:06
1.已知一颗二叉树采用二叉链表存放,写一算法,要求统计出二叉树中叶子结点个数并输出(输出无顺序要求)
1.已知一个带头结点的整数单链表L,要求将其拆分为一个正整数单链表L1和一个负整数单链表L2.
2.无向图采用邻接表存储结构,编写算法输出图中各连通分量的节点序列
3.编写一个建立二叉树的算法,要求采用二叉链表存储结构
2.编写算法,判断带头结点的双循环链表L是否对称。
我只有四十分了
请高手们帮帮忙啦

第一个问
struct Btree
{
int data;
struct Btree *left;
struct Btree *right;

};

int count(Btree *T)
{
Btree *st[50];
int top=-1;
Btree *p;
int sum=0;
if(T!=NULL)
{
top++;
st[top]=T;
while(top>-1)
{
p=st[top];
top--;
if(p->right!=NULL)
{
top++;
st[top]=p->right;
}
if(p->left!=NULL)
{
top++;
st[top]=p->left;
}
if(p->left==NULL && p->right==NULL)
{
sum++;
}
}
return sum;
}
}
由于时间的关系,只能帮你第一个问了