回 帖 发 新 帖 刷新版面

主题:[讨论]请教大家这个题怎么写,小弟是初学者,请大家帮忙!十分感谢!

请教大家这个题怎么写,小弟是初学者,请大家帮忙!十分感谢!

1、实现行政机构的二叉数表示,设数据元素类型为字符串(如总经理、业务部经理、财务部经理、业务主管A、业务主管B、业务员A1、业务员A2、业务员B1,业务员B2(可没有)、财务主管A、财务主管B、财务员A1、财务员A2(可没有)、财务员B1、财务员B2),建立这棵二叉树;实现该二叉树的前序、中序和后序遍历,输出遍历结果。

2、设数据元素为学生成绩(含姓名、成绩字段),关键字为学生成绩字段,实现这样的线性表的存储。数据让用户自行输入;编写算法实现插入排序(直接)和交换排序(快速、冒泡),要求输出每一趟(遍)的结果和最终结果,并应用它对上面的数据序列进行排序。

3、输入或给定若干个已经有序或逆序的线性表;分别利用直接选择排序、直接插入排序和交换排序(快速、冒泡)等各种排序方法对他们进行排序,并输出他们各自的比较和移动记录次数。

回复列表 (共2个回复)

沙发

/实现行政机构的二叉数表示,设数据元素类型为字符串
//(如总经理、业务部经理、财务部经理、业务主管A、业务主管B、
//业务员A1、业务员A2、业务员B1,业务员B2(可没有)、财务主管A、财务主管B
//财务员A1、财务员A2(可没有)、财务员B1、财务员B2),建立这棵二叉树;实现该二叉树的前序、中序和后序遍历,输出遍历结果。
#include <stdio.h>
#include <malloc.h>
#include <string.h>
#define NULL 0
#define ERROR 0
#define OK 1
#define NUM 20
typedef int Status;
typedef struct BiTNode
{char data[NUM];
 struct BiTNode *lchild,*rchild;
}BiTNode,*BiTree;
Status CreateBiTree(BiTree &T )
{//先序创建二叉树
 char c[20];
 scanf("%s",c);
 if(strcmp(c,"没人")==0) T=NULL;
 else
 {T=(BiTree)malloc(sizeof(BiTNode));
  if(!T) return ERROR;
  strcpy(T->data,c);
  printf("创建%s的左结点是:",c);
  CreateBiTree(T->lchild);
  printf("创建%s的右结点是:",c);
  CreateBiTree(T->rchild);
}
 return OK;
 
}
void PreOrderTraverse(BiTree T)
{//先序遍历二叉树
if(T)
{printf("%s  ",T->data);
 PreOrderTraverse(T->lchild);
 PreOrderTraverse(T->rchild);

}
}
main()
{BiTree T; 
printf("请输入创建的第一个结点:");
CreateBiTree(T); 
PreOrderTraverse(T);
printf("\n");

}

板凳

十分感谢大哥!

我来回复

您尚未登录,请登录后再回复。点此登录或注册