实验报告5(1).doc
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
程序设计上机实验报告 "姓名 " "学号 " " "时间 " "环境 "VC++ " " "题目1:顺序查找,折半查找 " " "用顺序存储结构表示查找表,实现以下运算要求: " " "(1)建立一个整数数据文件datafile; " " "(2)从文件datafile读取数据,并导入一维数组中; " "题目及要求 "(3)用顺序查找方法查找指定元素(由键盘输入),并显示查找结果; " " "(4)先对数组中的元素进行排序,分别用递归和非递归两种方式实现折半查找" " "方法 " " "题目2:二叉排序树的建立查找插入及删除运算 " " "在采用二叉链表存储结构的基础上,实现二叉排序树的以下运算: " " "(1)实现在二叉排序树上查找指定关键字的运算; " " "(2)实现在二叉排序树上插入一个关键字的运算; " " "(3)实现在二叉排序树上删除指定关键字的运算; " " "(4)实现二叉排序树的中序遍历运算,输出中序遍历序列; " " "(5)从空的二叉排序树开始,根据一个关键字序列,调用实现插入运算的函数" " ",建立二叉排序树。 " " " " "概要设计 "题目1: " " "顺序查找和折半查找 " " "typedef struct " " "{ " " "int key; " " "int data; " " "}Node; " " "题目2: " " "typedef struct Node " " "{ " " "int data; " " "struct Node *lchild,*rchild; " " "}Node,*BiTree; " "详细设计 " " " "题目1: " " "bool cha_zao1(Node ELEM[],int n,int e) " " "{//a中有n个元素,按键值key由小到大排序,查找e是否存在 " " " " " "int low,mid,high; " " " " " "low=0; " " "high=n-1; " " " " " "while(low<high) " " "{ " " "mid=(low+high)/2; " " "if(ELEM[mid].key==e)return true; " " "else if(e>ELEM[mid].key)low=mid+1; " " "else high=mid-1; " " "} " " " " " "return false; " " "} " " " " " "bool cha_zao2(Node ELEM[],int n,int e) " " "{ " " "int i; " " "for(i=0;i<n;i++) " " "if(ELEM[i].key>e)break; " " " " " "if(ELEM[i].key==e)return true; " " "return false; " " "} " " "int main() " " "{ " " "int i,n,k; " " "scanf("%d",&n); " " " " " "for(i=0;i<n;i++) " " "scanf("%d",&ELEM[i].key); " " " " " "printf("输入待查找元素:\n"); " " "scanf("%d",&k); " " "if(cha_zao1(ELEM,n,k))printf("YES\n"); " " "else printf("NO\n"); " " " " " " " " "return 0; " " "} " " "题目2: " " "int main() " " "{ " " "int e,m,n,i; " " "BiTree T,p,f; " " " " " "T=NULL; " " "p=NULL; " " "f=NULL; " " " " " "printf("请输入元素个数:\n"); " " "scanf("%d",&n); " " " " " "printf("输入元:\n"); " " "for(i=0;i<n;++i) " " "{ " " "scanf("%d",&e); " " "Insert(T,e); " " "} " " " " " "printf("中序遍历序列为:\n"); " " "InTraverse(T,Visit);//遍历运算 " " " " " "printf("\n输入待查找元素:\n"); " " "scanf("%d",&m); " " "if(Search(T,m,f,p))printf("YES\n"); " " "else printf("NO\n"); " " " " " "printf("输入待删
- 粉丝: 167
- 资源: 3万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助