C语言数据结构课程设计

来源:百度知道 编辑:UC知道 时间:2024/06/22 09:16:02
1.集合的表示与运算

2.一般树的存储表示及其基本操作的实现

就这两个问题,给出编码和基本的注释
最好发到我的信箱里:sosjjj999@163.com
先在这里谢谢各位前辈了!!
非常感谢!

举手之劳,帮你弄了。
下面的是树的各种操作的一个完整的c程序,在win-tc和Dev-c++下运行通过。
#include <stdio.h>
#include <stdlib.h>
struct node {
int value;
struct node* left;
struct node* right;
};
typedef struct node NODE;
typedef struct node* PNODE;
void new_node (PNODE* n, int value) {

*n = (PNODE)malloc (sizeof(NODE));
if (*n != NULL) {
(*n)->value = value;
(*n)->left = NULL;
(*n)->right = NULL;
}
}
void free_node (PNODE* n) {
if ((*n) != NULL) {
free (*n);
*n = NULL;
}
}
void free_tree (PNODE* n) {
if (*n == NULL) return;
if ((*n)->left != NULL) {
free_tree (&((*n)->left));
}
if ((*n)->right != NULL) {
free_tree (&((*n)->right));
}
free_node (n);
}
/* 查找结点 */
PNODE find_n