#include "stdio.h"
#include "stdlib.h"
#include "./3_func.h"
int main(int argc, const char *argv[])
{
tree* head=create();
xian(head);
printf("\n");
zhong(head);
printf("\n");
hou(head);
printf("\n");
return 0;
}
#include "stdio.h"
#include "stdlib.h"
#include "./3_func.h"
tree* create()
{
printf("请输入数据>>>");
int sj;
scanf("%d",&sj);
if( 0 == sj)
{
return NULL;
}
tree *head=(tree*)malloc(sizeof(tree));
if(NULL==head)
{
printf("创建结点失败\n");
return NULL;
}
head->data=sj;
head->left=create();
head->right=create();
return head;
}
//先序遍历
void xian(tree* head)
{
if(NULL==head)
{
return ;
}
printf("%d ",head->data);
xian(head->left);
xian(head->right);
return ;
}
//中序遍历
void zhong(tree* head)
{
if(NULL==head)
{
return ;
}
zhong(head->left);
printf("%d ",head->data);
zhong(head->right);
return ;
}
//后序遍历
void hou(tree* head)
{
if(NULL==head)
{
return ;
}
hou(head->left);
hou(head->right);
printf("%d ",head->data);
return ;
}
#ifndef __FUNC_H__
#define __FUNC_H__
typedef int DT;
typedef struct Tree
{
DT data;
struct Tree* left;
struct Tree* right;
}tree;
void xian(tree* head);
tree* create();
void zhong(tree* head);
void hou(tree* head);
#endif
数据结构12.7
最新推荐文章于 2024-05-18 17:16:57 发布