二叉树
typedef struct Tree{
int data;
struct Tree * lTree;
struct Tree * rTree;
}TREE,* PTREE;
void creatTree(struct Tree * * tre,int value){
if (tre==nil) {
(* tre) = malloc(sizeof(TREE));
(* tre)->lTree = nil;
(* tre)->rTree = nil;
(* tre)->data = value;
}else{
if ((* tre)->data > value) {
creatTree((* tre)->rTree,value);
}else{
creatTree((* tre)->lTree, value);
}
}
}
栈分顺序栈和链式栈
1,顺序栈
typedef struct Stack{
int data[100];
int top;
}STACK,* PSTACK;
void creatStack(struct Stack * * st)
{
(* st) = malloc(sizeof(STACK));
(* st)->top = -1;
}
2,链式栈
typedef struct LinkStack{
int data;
struct LinkStack * next;
}LINKSTACK,* PLINKSTACK;
void creatLinkStack(struct LinkStack * * st)
{
(* st) = malloc(sizeof(LINKSTACK));
(* st)->next = nil;
}
本文介绍了二叉树和栈的基本实现方法,包括顺序栈和链式栈的定义及创建过程。通过具体的C语言代码示例,展示了如何构建二叉树节点以及如何初始化不同类型的栈。
721

被折叠的 条评论
为什么被折叠?



