全文预览

在二叉排序树中查找关键字为key的记录

上传者:随心@流浪 |  格式:doc  |  页数:18 |  大小:57KB

文档介绍
找到!\n");printf("\n是否继续?(y/n):");scanf("%c",&ch);ch=getchar();}while(ch=='y'||ch=='Y');getchar();}//main实验结果:五、实验结果与分析(2)习题1:采用先序遍历的方式生成二叉树,程序中多次使用的递归的算法。使程序看起来很简洁。如果把头结点的生成也放到生成树的函数中,会使程序看起来更加调理。六、实验心得及体会查找是很多程序的基础,很多程序中都会用到查找。比如在线性表的插入和删除时要查找合适的位置。所以学好查找是很必要的。本次实验只要是采取了这般查找的方法。其实还有很多查找的方法。如顺序查找,索引顺序表查找。每种查找方法各有优劣。如折半查找的平均查找长度小于顺序查找,但它要求查找的表为有序的。所以需将无序表排序成有序表。这又会浪费运行时间。编写程序时遇到了很多的困难,如先序生成树更好还是中序生成更好。太原理工大学学生实验报告学院名称计算机科学与技术专业班级计Z1002班实验成绩学生姓名郑海兵学号2010001420实验日期1月2日课程名称数据结构实验题目5内排序一、实验目的与要求通过本次实验,掌握线性表的排序方法,并分析时间复杂度。二、主要仪器设备Cfree三、实验内容和原理[问题描述]设计一个用链表表示的直接选择排序算法,并用程序实现。[输入]n个数据。[输出]n个数据由小到大排列的结果。[存储结构]待排序记录顺序存储。[算法的基本思想]已知待排序初始序列用单链表存储,头指针head指向第一个结点,从这个待排序列中找出最小结点,插入head之后,用r来指示。r以前为已排序序列,r以后为未排序序列。再从未排序序列中找出最小结点插入r的后面,让r指向这个结点。反复执行这个过程,直到排好序。[参考源程序]#include<stdio.h>#include<malloc.h>intn;

收藏

分享

举报
下载此文档