您当前所在的位置: 首页 > 资格等级 > 计算机等级 > 正文
计算机等考二级C语言:二叉树的基本操作小结
发布日期:2012-04-10 08:53:00 来源:考试吧

  二叉树的一般操作,实现如下:

  主要练习了二叉树的非递归遍历,利用栈,和队列来完成。算法思想,没描述清楚,表达能力很差...崩溃....

  代码

  #include "stdio.h"

  #include "malloc.h"

  #define  MAXSIZE 20

  //二叉树结点的结构体表示形式

  typedef struct node

  {

  char    data;

  struct node* left,*right;

  }BTree;

  //栈的结构体表示形式

  typedef struct stackelem

  {

  BTree* a[MAXSIZE];

  int top;

  }Stack;

  //队列的结构体的表示形式

  typedef struct queueelem

  {

  BTree* b[MAXSIZE];

  int front,rear;

  }Queue;

  //创建二叉树,利用递归的方法

  BTree* Create()

  {

  char ch;

  scanf_s("%c",&ch);

  getchar();

  if (ch=='#')

  {

  return NULL;

  }

  else

  {

  BTree* btree=(BTree*)malloc(sizeof(BTree));

  if (NULL==btree)

  {

  return NULL;

  }

  btree->data=ch;

  btree->left=Create();

  btree->right=Create();

  return btree;

  }

  }

  //前序遍历,递归的方法


计算机等考二级C语言:二叉树的基本操作小结
字体: A+ A A-