1.c

来自「数据结构中关于二叉树的中序遍历问题与创建」· C语言 代码 · 共 92 行

C
92
字号
#include<slib.h>

typedef struct 
{
struct ee *left;
int data;
struct ee *right;
};ee 

typedef struct ee eenode;
type eenode *b_ee; 


b_ee insert_node(b_ee root,int node)
{
b_ee newnode;
b_ee currentnode;
b_ee parentnode;

newnode=(b_ee)malloc(sizeof(eenode));
newnode->data=node;
newnode->right=NULL;
newnode->left=NULL;

if(root=NULL)
return newnode;
else
{ currentnode=root;
while(currentnode!=NULL)
{ parentnode=currentnode;
if( currentnode->data>node)
currentnode=currentnode->left;
else currentnode=currentnode->right;
}
if(parentnode->data>node)
parentnode->left=newnode;
else parentnode->right=newnode;
}
return root;
}


b_ee create_bee(int *data,int len)
{
b_ee root=NULL;
int i;

for(i=0;i<len;i )
root=insert_node(root,data[i]);
return root;
}


void inorder(b_ee point)
{
if(point!=NULL)
{
inorder(point->left);
printf("%d",point->data);
inorder(point->right);
}
}


void main( )
{
b_ee root=NULL;
int i,index;
int value;
int nodelist[20];
printf("\n pleaase input the elements of binary ee(exit for 0 ):\n");
index=0;


scanf("%d",&value);

while(value!=0)
{
nodelist[index]=value];
index=index 1;
scanf("%d",&value);
}

root=create_bee(nodelist,index);


printf("\nThe inorder aversal result is :");
inorder(root);
printf("\n");
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?