自己编的:把二叉树顺序存储转换为链式存储出错。
顺序-》链式转换完后,线序遍历出错啊#include<stdio.h>
#include<stdlib.h>
typedef struct node
{
node *lchild;
node *rchild;
//node *next;
char data;
}node1;
node lianbiao(node *b,char a[100],int i)
{
if((i>8)||((a[i])==char(0)))
b=NULL;
else
{
b=(node *)malloc(sizeof(node));
b->data=a[i];
//printf("%c\n",b->data);
//for(i=1;i<9;i++)
//b=b->lchild;
lianbiao(b->lchild,a,i*2);
printf("%c__",b->data);
lianbiao(b->rchild,a,i*2+1);
//b->rchild=2*a[i]+1;
}
}
void first(node *b)
{
if(b!=NULL)
{
first(b->lchild);
first(b->rchild);
printf("%c",b->data);
}
}
int main()
{
node1 *b,*p;
p=b;
char a[100]={'a','b','c','d','e','f','g','h'};
lianbiao(b,a,1);
printf("\n");
// printf("%c\n",b->data);
first(b);
}