大学数据结构实验报告模板
大学数据结构实验报告模板

大学数据结构实验报告模板大学数据结构实验报告模板一、实验目的本实验旨在通过设计和实现不同的数据结构,加深对数据结构的理解,掌握数据结构在实际问题中的应用。
二、实验内容1. 设计和实现线性表的基本操作(插入、删除、查找等)。
2. 设计和实现栈和队列的基本操作(入栈、出栈、入队、出队等)。
3. 设计和实现二叉树的基本操作(遍历、插入节点、删除节点等)。
4. 设计和实现图的基本操作(深度优先搜索、广度优先搜索等)。
三、实验步骤1. 实验环境设置在开始实验之前,我们需要搭建好实验环境。
首先,我们需要一个支持输入输出和编译运行程序的开发环境,如C语言开发环境或Python环境。
其次,我们需要一个集成开发环境(IDE),如Visual Studio Code或PyCharm,用于编写和调试代码。
最后,我们需要准备实验所需的测试数据。
2. 线性表实验首先,我们需要定义线性表的数据结构,包括元素类型和操作函数。
然后,根据实验要求,逐步实现线性表的基本操作,如插入、删除、查找等。
在实现过程中,我们需要注意边界条件和异常处理。
最后,我们可以编写测试代码,对线性表的功能进行测试。
3. 栈和队列实验与线性表实验类似,我们需要先定义栈和队列的数据结构,并实现它们的基本操作函数。
然后,我们可以编写测试代码,对栈和队列的功能进行测试。
在测试过程中,我们可以构造不同的测试用例,包括特殊情况的处理,以确保实现的正确性。
4. 二叉树实验首先,我们需要定义二叉树的数据结构和节点结构。
然后,我们可以逐步实现二叉树的基本操作,如遍历、插入节点、删除节点等。
在实现过程中,我们需要注意二叉树的特性和树结构的操作方法。
最后,我们可以编写测试代码,对二叉树的功能进行测试。
5. 图实验与上述实验类似,我们需要定义图的数据结构和边结构。
然后,根据实验要求,逐步实现图的基本操作,如深度优先搜索、广度优先搜索等。
在实现过程中,我们需要注意图的特性和遍历算法的选择。
数据结构课程设计实验报告完整版

数据结构课程设计实验报告完整版【正文】一、实验目的本实验主要目的是通过实践,掌握数据结构的基本概念、常见数据结构的实现方式以及在实际应用中的应用场景和效果。
二、实验背景数据结构是计算机科学与技术领域中的一个重要概念,是研究数据的组织方式、存储方式、访问方式以及操作等方面的方法论。
在计算机科学领域,数据结构是实现算法和解决问题的基础,因此对数据结构的理解和应用具有重要意义。
三、实验内容本次数据结构课程设计实验主要分为以下几个部分:1. 实验环境的准备:包括选择合适的开发平台、安装必要的软件和工具。
2. 实验数据的收集和处理:通过合适的方式收集实验所需的数据,并对数据进行处理和整理。
3. 数据结构的选择和实现:根据实验需求,选择合适的数据结构,并进行相应的数据结构实现。
4. 数据结构的测试和优化:对所实现的数据结构进行测试,包括性能测试和功能测试,并根据测试结果对数据结构进行优化和改进。
5. 实验报告的撰写:根据实验过程和结果,撰写完整的实验报告,包括实验目的、实验背景、实验内容、实验结果和结论等。
四、实验过程1. 实验环境的准备本实验选择了Visual Studio作为开发平台,安装了相应版本的Visual Studio,并根据官方指引进行了相应的配置和设置。
2. 实验数据的收集和处理本实验选取了一份包含学生信息的数据集,包括学生姓名、学号、性别、年龄等信息。
通过编写Python脚本,成功提取了所需信息,并对数据进行了清洗和整理。
3. 数据结构的选择和实现根据实验需求,我们选择了链表作为数据结构的实现方式。
链表是一种常见的动态数据结构,能够高效地插入和删除元素,适用于频繁插入和删除的场景。
在实现链表时,我们定义了一个节点结构,包含数据域和指针域。
通过指针的方式将节点连接起来,形成一个链式结构。
同时,我们还实现了相关的操作函数,包括插入、删除、查找等操作。
4. 数据结构的测试和优化在完成链表的实现后,我们对其进行了性能测试和功能测试。
《数据结构》实验报告模板(附实例)--实验一线性表的基本操作实现

《数据结构》实验报告模板(附实例)---实验一线性表的基本操作实现实验一线性表的基本操作实现及其应用一、实验目的1、熟练掌握线性表的基本操作在两种存储结构上的实现,其中以熟悉各种链表的操作为重点。
2、巩固高级语言程序设计方法与技术,会用线性链表解决简单的实际问题。
二、实验内容√ 1、单链表的表示与操作实现 ( * )2、约瑟夫环问题3、Dr.Kong的艺术品三、实验要求1、按照数据结构实验任务书,提前做好实验预习与准备工作。
2、加“*”题目必做,其他题目任选;多选者并且保质保量完成适当加分。
3、严格按照数据结构实验报告模板和规范,及时完成实验报告。
四、实验步骤(说明:依据实验内容分别说明实验程序中用到的数据类型的定义、主程序的流程以及每个操作(成员函数)的伪码算法、函数实现、程序编码、调试与分析、总结、附流程图与主要代码)㈠、数据结构与核心算法的设计描述(程序中每个模块或函数应加注释,说明函数功能、入口及出口参数)1、单链表的结点类型定义/* 定义DataType为int类型 */typedef int DataType;/* 单链表的结点类型 */typedef struct LNode{ DataType data;struct LNode *next;}LNode,*LinkedList;2、初始化单链表LinkedList LinkedListInit( ){ // 每个模块或函数应加注释,说明函数功能、入口及出口参数 }3、清空单链表void LinkedListClear(LinkedList L){// 每个模块或函数应加注释,说明函数功能、入口及出口参数}4、检查单链表是否为空int LinkedListEmpty(LinkedList L){ …. }5、遍历单链表void LinkedListTraverse(LinkedList L){….}6、求单链表的长度int LinkedListLength(LinkedList L){ …. }7、从单链表表中查找元素LinkedList LinkedListGet(LinkedList L,int i){ //L是带头结点的链表的头指针,返回第 i 个元素 }8、从单链表表中查找与给定元素值相同的元素在链表中的位置LinkedList LinkedListLocate(LinkedList L, DataType x){ …… }9、向单链表中插入元素void LinkedListInsert(LinkedList L,int i,DataType x) { // L 为带头结点的单链表的头指针,本算法// 在链表中第i 个结点之前插入新的元素 x}10、从单链表中删除元素void LinkedListDel(LinkedList L,DataType x){ // 删除以 L 为头指针的单链表中第 i 个结点 }11、用尾插法建立单链表LinkedList LinkedListCreat( ){ …… }㈡、函数调用及主函数设计(可用函数的调用关系图说明)㈢程序调试及运行结果分析㈣实验总结五、主要算法流程图及程序清单1、主要算法流程图:2、程序清单(程序过长,可附主要部分)说明:以后每次实验报告均按此格式书写。
大学数据结构实验报告模板

1、实验目的本实验旨在通过实际操作和代码编写,掌握数据结构的基本概念、常用算法和数据结构的应用能力。
2、实验内容2.1 实验一、线性表的基本操作2.1.1 实验介绍在本实验中,我们将实现线性表的基本操作,包括初始化线性表、插入元素、删除元素、查找元素等。
通过这些基本操作的实现,我们可以加深对线性表的理解。
2.1.2 实验步骤步骤一、初始化线性表步骤二、插入元素步骤三、删除元素步骤四、查找元素2.2 实验二、栈的应用——括号匹配2.2.1 实验介绍在本实验中,我们将使用栈来实现括号匹配。
通过这个应用实例,我们可以更好地理解栈的特性和应用场景。
2.2.2 实验步骤步骤一、括号匹配算法的实现步骤二、测试括号匹配算法3、实验结果与分析3.1 实验一结果分析3.1.1 初始化线性表的效率分析3.1.2 插入操作的效率分析3.1.3 删除操作的效率分析3.1.4 查找操作的效率分析3.2 实验二结果分析3.2.1 括号匹配算法的验证3.2.2 算法的时间复杂度分析3.2.3 算法的空间复杂度分析4、实验总结通过本次实验,我们进一步了解了数据结构的基本概念和应用。
我们通过实际操作和代码编写,加深了对线性表和栈的理解,并且掌握了相关算法的实现和分析方法。
5、附件本实验报告涉及的附件包括:- 代码实现文件- 实验数据统计表格6、法律名词及注释在本文档中,涉及的法律名词和注释包括:- 数据结构:指在计算机科学中,我们用来组织和存储数据的方式或格式。
- 线性表:是最基本、最简单、也是最常用的一种数据结构。
线性表中的数据元素之间是一对一的关系。
- 栈:是一种特殊的线性表,它的插入和删除操作只能在同一端进行。
后进先出(Last In First Out,LIFO)是栈的特性之一。
- 括号匹配:是指检查一个字符串中的所有括号是否匹配完整的过程。
数据结构实验报告2

数据结构实验报告2数据结构实验报告21、实验目的本次实验的目的是通过使用数据结构来解决一个特定的问题。
具体而言,我们将会使用某种数据结构(例如链表、堆栈、队列等)来实现一个特定功能,并对其性能进行评估。
2、实验背景在本次实验中,我们将会探索数据结构在解决实际问题中的应用。
数据结构是计算机科学的重要组成部分,它提供了一种组织和管理数据的方式,以便能够高效地访问和操作这些数据。
3、实验内容在本次实验中,我们选择了一种经典的数据结构,以实现一个特定的功能。
具体而言,我们将会使用链表来实现一个简单的联系人管理系统。
3.1 数据结构选择我们选择了链表作为联系人管理系统的数据结构。
链表是一种灵活的数据结构,它能够动态地增加或删除元素,并且支持高效的插入和删除操作。
3.2 实现功能我们的联系人管理系统将会具有以下功能:- 添加联系人:用户可以输入联系人的姓名、方式号码等信息,并将其添加到联系人列表中。
- 删除联系人:用户可以选择要删除的联系人,并从列表中删除该联系人。
- 查找联系人:用户可以根据姓名或方式号码来查找联系人,并显示相关信息。
- 显示所有联系人:系统将会将所有联系人按照姓名的字母顺序进行排序,并将其显示在屏幕上。
4、实验步骤下面是本次实验的具体步骤:4.1 初始化联系人管理系统在系统开始之前,我们需要初始化联系人管理系统。
这包括创建一个空的联系人列表,并提供用户菜单来选择相应功能。
4.2 添加联系人用户可以选择添加联系人的功能,并输入联系人的相关信息。
系统将会将联系人添加到联系人列表中。
4.3 删除联系人用户可以选择删除联系人的功能,并输入要删除联系人的姓名或方式号码。
系统将会在联系人列表中查找并删除相应联系人。
4.4 查找联系人用户可以选择查找联系人的功能,并输入要查找联系人的姓名或方式号码。
系统将会在联系人列表中查找相应联系人,并显示其相关信息。
4.5 显示所有联系人用户可以选择显示所有联系人的功能。
数据结构实验报告2篇

数据结构实验报告数据结构实验报告精选2篇(一)实验目的:1. 熟悉数据结构的基本概念和基本操作;2. 掌握线性表、栈、队列、链表等经典数据结构的实现方法;3. 掌握数据结构在实际问题中的应用。
实验内容:本次实验主要包括以下几个部分:1. 线性表的实现方法,包括顺序表和链表,分别使用数组和链表来实现线性表的基本操作;2. 栈的实现方法,包括顺序栈和链式栈,分别使用数组和链表来实现栈的基本操作;3. 队列的实现方法,包括顺序队列和链式队列,分别使用数组和链表来实现队列的基本操作;4. 链表的实现方法,包括单链表、双链表和循环链表,分别使用指针链、双向链和循环链来实现链表的基本操作;5. 综合应用,使用各种数据结构来解决实际问题,例如使用栈来实现括号匹配、使用队列来实现马铃薯游戏等。
实验步骤及结果:1. 线性表的实现方法:a) 顺序表的基本操作:创建表、插入元素、删除元素、查找元素等;b) 链表的基本操作:插入节点、删除节点、查找节点等;c) 比较顺序表和链表的优缺点,分析适用场景。
结果:通过实验,确认了顺序表适用于频繁查找元素的情况,而链表适用于频繁插入和删除节点的情况。
2. 栈的实现方法:a) 顺序栈的基本操作:进栈、出栈、判空、判满等;b) 链式栈的基本操作:进栈、出栈、判空、判满等。
结果:通过实验,掌握了栈的基本操作,并了解了栈的特性和应用场景,例如括号匹配。
3. 队列的实现方法:a) 顺序队列的基本操作:入队、出队、判空、判满等;b) 链式队列的基本操作:入队、出队、判空、判满等。
结果:通过实验,掌握了队列的基本操作,并了解了队列的特性和应用场景,例如马铃薯游戏。
4. 链表的实现方法:a) 单链表的基本操作:插入节点、删除节点、查找节点等;b) 双链表的基本操作:插入节点、删除节点、查找节点等;c) 循环链表的基本操作:插入节点、删除节点、查找节点等。
结果:通过实验,掌握了链表的基本操作,并了解了链表的特性和应用场景。
《数据结构》实验报告参考模板

图的创建与遍历.一、实验目的1.掌握图的含义;2.掌握用邻接矩阵和邻接表的方法描述图的存储结构;3.理解并掌握深度优先遍历和广度优先遍历的存储结构。
二、实验要求1.认真阅读和掌握本实验的参考程序。
2.按照对图的操作需要,在创建好图后再通过遍历算法验证创建结果。
3.保存程序的运行结果,并结合程序进行分析。
三、实验内容以下参考程序是按邻接表的方法创建图,然后用深度优先遍历方法遍历图。
请认真理解程序,然后实现图的广度优先遍历。
四、程序流程图、算法及运行结果5-1#include "stdio.h"#define maxsize 1024 /*假定线性表的最大长度为1024*/#define n 100 /* 图的顶点最大个数 */typedef int datatype; /*假定线性表元素的类型为整型*/typedef char VEXTYPE; /* 顶点的数据类型 */typedef float ADJTYPE; /* 权值类型 */typedef struct{VEXTYPE vexs[n] ; /* 顶点信息数组 */ADJTYPE arcs[n][n] ; /* 边权数组 */int num ; /* 顶点的实际个数 */} GRAPH;/* 1.置空图 */void GraphInit(GRAPH *L){L->num=0;}/* 2.求结点数 */int GraphVexs(GRAPH *L){return(L->num);}/* 3.创建图 */void GraphCreate(GRAPH *L){int i,j;GraphInit(L);printf("请输入顶点数目:");scanf("%d",&L->num);printf("请输入各顶点的信息(单个符号):");for(i=0;i<L->num;i++){fflush(stdin);scanf("%c",&L->vexs[i]);}printf("请输入边权矩阵的信息:");for(i=0;i<L->num;i++){for(j=0;j<L->num;j++){scanf("%f",&L->arcs[i][j]);}}printf("图已经创建完毕!");}/* 4.图的输出 */void GraphOut(GRAPH L){int i,j;printf("\n图的顶点数目为:%d",L.num);printf("\n图的各顶点的信息为:\n");for(i=0;i<L.num;i++)printf("%c ",L.vexs[i]);printf("\n图的边权矩阵的信息为:\n");for(i=0;i<L.num;i++){for(j=0;j<L.num;j++){printf("%6.2f ",L.arcs[i][j]);}printf("\n");}printf("图已经输出完毕!");}/* 5.图的深度周游 */void DFS(GRAPH g,int qidian,int mark[])/* 从第qidian个点出发深度优先周游图g中能访问的各个顶点 */ {int v1;mark[qidian]=1;printf("%c ",g.vexs[qidian]);for(v1=0;v1<g.num;v1++){if(g.arcs[qidian][v1]!=0&&mark[v1]==0)DFS(g,v1,mark);}}/* 6.图的深度周游 */void GraphDFS(GRAPH g)/* 深度优先周游图g中能访问的各个顶点 */{int qidian,v,v1,mark[maxsize];printf("\n深度周游:");printf("\n请输入起点的下标:");scanf("%d",&qidian);for(v=0;v<g.num;v++){mark[v]=0;}for(v=qidian;v<g.num+qidian;v++){v1=v%g.num;if(mark[v1]==0)DFS(g,v1,mark);}}/* 队列元素的数据类型 */typedef int DATATYPE;typedef struct{DATATYPE data[maxsize]; /* 队中元素 */int front,rear; /* 队头元素下标、队尾元素后面位置的下标 */} SEQQUEUE;void QueueInit(SEQQUEUE *sq)/* 将顺序循环队列sq置空(初始化) */{sq->front=0;sq->rear=0;}int QueueIsEmpty(SEQQUEUE sq)/* 如果顺序循环队列sq为空,成功返回1,否则返回0 */{if (sq.rear==sq.front)return(1);elsereturn(0);}int QueueFront(SEQQUEUE sq,DATATYPE *e)/* 将顺序循环队列sq的队头元素保存到e所指地址,成功返回1,失败返回0 */ {if(QueueIsEmpty(sq)){ printf("queue is empty!\n");return 0;}else{ *e=sq.data[(sq.front)]; return 1;}}int QueueIn (SEQQUEUE *sq,DATATYPE x)/* 将元素x入队列sq的队尾,成功返回1,失败返回0 */ {if (sq->front==(sq->rear+1)%maxsize){printf("queue is full!\n");return 0;}else{sq->data[sq->rear]=x;sq->rear=(sq->rear+1)%maxsize;return(1);}}int QueueOut(SEQQUEUE *sq)/* 将队列sq队首元素出队列,成功返回1,失败返回0 */ {if(QueueIsEmpty(*sq)){printf("queue is empty!\n");return 0;}else{sq->front=(sq->front+1)%maxsize;return 1;}}/* 7.图的广度周游 */void BFS(GRAPH g,int v,int mark[])/* 从v出发广度优先周游图g中能访问的各个顶点 */ {int v1,v2;SEQQUEUE q;QueueInit(&q);QueueIn(&q,v);mark[v]=1;printf("%c ",g.vexs[v]);while(QueueIsEmpty(q)==0){QueueFront(q,&v1);QueueOut(&q);for(v2=0;v2<g.num;v2++){if(g.arcs[v1][v2]!=0&&mark[v2]==0){QueueIn(&q,v2);mark[v2]=1;printf("%c ",g.vexs[v2]); }}}}/* 8.图的广度周游 */void GraphBFS(GRAPH g)/* 深度优先周游图g中能访问的各个顶点 */ {int qidian,v,v1,mark[maxsize];printf("\n广度周游:");printf("\n请输入起点的下标:");scanf("%d",&qidian);for(v=0;v<g.num;v++){mark[v]=0;}for(v=qidian;v<g.num+qidian;v++){v1=v%g.num;if(mark[v1]==0)BFS(g,v1,mark);}}void main(){GRAPH tu;GraphCreate(&tu);GraphOut(tu);GraphDFS(tu);GraphBFS(tu);}友情提示:范文可能无法思考和涵盖全面,供参考!最好找专业人士起草或审核后使用,感谢您的下载!。
数据结构实验报告模板.doc

数据结构实验报告模板院系计算机科学学院专业年级课程名称数据结构学号姓名指导教师刘晶年月日实验一线性结构的基本操作和应用实验目的及要求一、实验目的1、掌握线性表的结构特点和实现方法,能够编写程序实现线性表的基本操作初始化,插入,删除,查找,判空,求线性表长度等运算。
2、能够掌握特殊线性表(栈和队列)的结构特点及其基本操作;3、能利用栈的特性进行实际应用。
二、实验题目及要求线性结构部分共包含三个实验内容1、用顺序表或者链表实现线性表的基本操作初始化,插入,删除,查找,判空,求线性表长度。
2、线性表的基本应用从以下两个实验题目中任选一个实现1)利用线性表实现一元多项式的相加。
2)利用线性表实现约瑟夫环问题。
3、利用栈的基本操作,编写程序实现括号匹配问题从键盘输入一组括号,当程序接收第一个左括号之后,期待与之匹配的右括号,如果等到的是另外一组括号的左一半则等待,若等到另外一个不匹配的右括号则程序结束并提示括号不匹配;若整个括号序列判断完毕,但栈未空则表示仍有括号未配对,提示不匹配。
否则提示匹配。
三、实验报告书写要求简明清晰的写出每个实验题目的算法步骤,可以混合使用自然语言、流程图及伪代码的方式,不能直接复制源程序。
每个实验题目需要附上程序正确运行结果的截图。
题目一线性表的基本操作算法步骤的简要说明(流程图或伪代码)(写不完时,可另加附页。
)实验结果分析(程序运行结果的截图)题目二线性表的基本应用算法步骤的简要说明(流程图或伪代码)(写不完时,可另加附页。
)实验结果分析(程序运行结果的截图)题目三栈的应用括号匹配算法步骤的简要说明(流程图或伪代码)(写不完时,可另加附页。
)实验结果分析(程序运行结果的截图)实验成绩评分项成绩等级算法设计的正确性算法设计的健壮性程序运行情况报告书写综合成绩指导教师签名日期实验二树型结构的基本操作和应用实验目的及要求一、实验目的1、熟练掌握树的基本概念、结构特点并且熟悉各种存储结构的特性。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据结构程序设计基本方法
实现步骤:编写、编译、链接、执行
四、实验内容或步骤
内容:
(1)初始化栈
(2)入栈和出栈
(3)判断栈是否为空
(4)编写主函数实现
2)实验步骤:
1)编写C的源程序如下:
#include <stdio.h>
#include <stdlib.h>
#define ElemType int
h->next=NULL;
qe->font=h; //头指针指向NULL
qe->rear=h; //尾指针指向NULL
printf("n= ");
scanf("%d", &n);
for(i=0;i<n;i++)
{
printf("\n data= ");
scanf("%d", &x);
insert(qe, x);
void creat(LinkQueue *qe);
void insert(LinkQueue *qe, ElemType x);
ElemType delete(LinkQueue *qe);
int main(void)
{
LinkQueue que;
ElemType y, x;
int i, X, Y, cord;
typedef struct NodeType
{
ElemType data;
struct NodeType *next;
}NodeType;
typedef struct
{
NodeType *font, *rear;
}LinkQueue;
NodeType *p, *s, *h;
void outlin(LinkQueue qq);
s->next=NULL;
qe->rear->next=s;
qe->rear=s;
}
ElemType delete(LinkQueue *qe)
{
ElemType x;
if(qe->font==qe->rear)
{
printf("队列为空。\n");
x=0;
}
else
{
p=qe->font->next;
do
{
printf("\n主菜单\n");
printf(" 1建立链表队列\n");
printf(" 2入队一个元素\n");
printf(" 3出队一个元素\n");
printf(" 4结束程序运行\n");
printf("===========================\n");
printf("请输入您的选择(1, 2, 3, 4): ");
{
printf(" data=%4d\n", p->data);
p=p->next;
}
printf("\n outend \n\n");
}
void insert(LinkQueue *qe, int x)
{
s=(NodeType*)malloc(sizeof(NodeType));
s->data=x;
Y=delete(&que);
printf("\n x=%d\n", Y);
outlin(que);
}break;
case 4: exit(0);
}
}while(cord<=4);
return 0;
}
void outlin(LinkQueue qq)
{
p=qq.font->next;
while(p!=NULL)
实验报告
课程名称:数据结构
系部名称:计算机科学与技术
专业班级:计科15-2
学生姓名:刘航征
学号:
指导教师:王姝音
黑龙江工程学院教务处制
实验项目
实验四:队列的链表储存结构及实现
实验日期
2016.9.9
实验地点
A507
同组人数
1
实验台号
一、实验目的
(1)掌握线性表的定义与实现。
二、实验仪器设备
计算机
系统:windows 7;
scanf("%d", &cord);
switch(cord)
{
case 1: {
creat(&que);
outlin(que);
}break;
case 2: {
printf("\n x= ");
scanf("%d", &X);
insert(&que, X);
outlቤተ መጻሕፍቲ ባይዱn(que);
}break;
case 3: {
}
}
2)编译
3)执行
#建立链表队列:
#入队一个元素:
#出队一个元素:
#结束程序:
六、数据处理结果(结论)
正确
七、实验中存在的问题、进一步的想法等
八、教师评语
成绩
指导教师签字:
年月日
注:此报告为参考格式,各栏项目可根据实际情况进行调整。
qe->font->next=p->next;
if(p->next==NULL)
qe->rear=qe->font;
x=p->data;
free(p);
}
return(x);
}
void creat(LinkQueue *qe)
{
int i, n, x;
h=(NodeType *)malloc(sizeof(NodeType));