收藏 分享(赏)

数据结构图实验.doc

上传人:scg750829 文档编号:6187756 上传时间:2019-04-01 格式:DOC 页数:6 大小:114KB
下载 相关 举报
数据结构图实验.doc_第1页
第1页 / 共6页
数据结构图实验.doc_第2页
第2页 / 共6页
数据结构图实验.doc_第3页
第3页 / 共6页
数据结构图实验.doc_第4页
第4页 / 共6页
数据结构图实验.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

1、实验报告 杭州师范大学信息科学与工程学院 学生用表学 生 实 验 报 告课程名称_数据结构_ 实验日期_2011_年_12_月_20_日学生姓名 xxx 学号 1004061020 所在班级 计 102实验名称 Project 7: Traversals and Applications of Graph实验地点 X-109 同组人员 无实验仪器(软件、硬件环境)Xp 系统,vc+6.0实验目的(要求)1.ProblemGiven a directed graph (see Figure2), use the adjacency list method to represent it, and

2、 output the sequence of vertex names getting from Depth-First Search and Breadth-First Search. And Given a source v0, Determine a shortest path to each vV(G) v0 and output them.2. Input and Output DemandInput: the number of vertex, the number of edge, all edges (Vi,Vj) and its weight in a graph.Outp

3、ut: (1).print the graph.(2).print the sequence of vertex names getting from Depth-First Search.(3). print the sequence of vertex names getting from Breadth-First Search.For example (See Figure 1):Input:6 11 / indicate the graph including six vertexes and eleven edges.0 1 50 / indicate an edge from V

4、0 to V1.0 2 100 4 451 2 151 4 102 0 202 3 153 1 203 4 354 3 305 3 3实验报告 杭州师范大学信息科学与工程学院 学生用表Figure 2Output:0:1 2 41:2 42:0 33:1 44:35:3The sequence of vertex names getting from Depth-First Search (from V1):V1 V2 V0 V4 V3 V5The sequence of vertex names getting from Breadth-First Search (from V1):V1 V

5、2 V4 V0 V3 V5 Shortest paths from v0 to each vertex are V0 to V1 45V0 to V2 10V0 to V3 25V0 to V4 45V0 to V5 1000 (“1000” means no path.)3.Steps and restrict conditions:Step 1. Implement Depth-First Search Algorithm;Step2. Implement Queue ADT represented by circular queue, which has seven basic oper

6、ations: CreateQueue, IsEmpty, DisposeQueue, MakeEmpty, EnQueue, Front, DeQueue. The element type is pointer of node;Step 3. Implement Breadth-First Search Algorithm;Step 4. Write a function to determine a shortest path from vi to each vV(G) v i .Note:Your program must read from a file “input.txt” an

7、d write to a file “output.txt” in the current directory.实验报告 杭州师范大学信息科学与工程学院 学生用表实验内容和步骤(硬件类为:原理、主要步骤、电路原理图等)(软件类为:数据结构、算法、主要步骤、界面等)本实验先要了解清楚图的建立,三种邻接矩阵,邻接表,邻接多层表这些表达方式。一开时因为建图的问题导致后来程序的从写,浪费了很多时间,以后要多花带点时间了解清楚实验的要求。这是结构体struct GNodeint iVertex;int a;struct GNode *pNextChild;struct IntQueueint IntAr

8、rayMAX_SIZE;int iFront, iRear;Gnode 作为结构体指针,在放到数组中,形成结构体数组。这样方便栈,队的操作。这是邻接表的建立/添加一条从 iCurVertex 到 iLinkedVertex 的边int InsertEdge(struct GNode *gMAX_VERTICES, int iCurVertex, int iLinkedVertex,int b)struct GNode *pNode;pNode = (struct GNode*)malloc(sizeof(struct GNode);if(NULL = pNode)printf(“failed

9、to allocate memory when add a link“);return 0;pNode-iVertex = iLinkedVertex;pNode-a=b;pNode-pNextChild = giCurVertex;giCurVertex = pNode;return 1;感觉有难度,学习了老师的代码。接着是两种遍历,看着书还是挺简单的最短路径void shortestpath(int v,int cost6,int distance,int n,int found)int i,u,w;for(i=0;in;i+)foundi=0;实验报告 杭州师范大学信息科学与工程学院 学

10、生用表distancei=costvi;foundv=1;distancev=0;for(i=0;in-2;i+)u=choose(distance,n,found);foundu=1;for(w=0;wn;w+)if(!foundw)if(distanceu+costuwdistancew)distancew=distanceu+costuw;int choose(int distance,int n,int found)int i,min,minpos;min=1000;minpos=-1;for(i=0;in;i+)if(distanceiminminpos=i;return minpos;单部调试了书上的代码,学习到了很多,接着自己尝试着写了出来以下是实验截图实验报告 杭州师范大学信息科学与工程学院 学生用表实验主要步骤(硬件类为:原理、主要步骤、电路原理图等)(软件类为:数据结构、算法、主要步骤、界面等)(本栏版面不够请填写在附页)实验报告 杭州师范大学信息科学与工程学院 学生用表实验结果或结论心得和建议评 语得 分注:学生做每个实验都必须填写实验报告。实验报告可以是纸质的,也可以是电子形式的。凡电子文本形式的实验报告须在学期末刻录进该学期教学资料光盘并存个人教学档案。实验指导教师签名_ _年_ 月_ 日

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 中等教育 > 中学实验

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报