- 1、本文档共35页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
课程设计任务书
学生姓名: 专业班级:
指导教师: 工作单位: 计算机科学系
题 目: 拓扑排序
初始条件:
(1)采用邻接表作为有向图的存储结构;
(2)给出所有可能的拓扑序列。
(3)测试用例见严蔚敏《数据结构习题集(C语言版)》p48题7.9图
要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)
课程设计报告按学校规定格式用A4纸打印(书写),并应包含如下内容:
1. 问题描述
简述题目要解决的问题是什么。
2. 设计
存储结构设计、主要算法设计(用类C/C++语言或用框图描述)、测试用例设计;
3. 调试报告
调试过程中遇到的问题是如何解决的;对设计和编码的讨论和分析。
4. 经验和体会(包括对算法改进的设想)
5. 附源程序清单和运行结果。源程序要加注释。如果题目规定了测试数据,则运行结果要包含这些测试数据和运行输出。
说明:
1. 设计报告、程序不得相互抄袭和拷贝;若有雷同,则所有雷同者成绩均为0分。
2. 凡拷贝往年任务书或课程设计充数者,成绩一律无效,以0分记。
时间安排:
1.第17周完成,验收时间由指导教师指定
2.验收地点:实验中心
3.验收内容:可执行程序与源代码、课程设计报告书。
指导教师签名: 2013年6月14日
系主任(或责任教师)签名: 年 月 日
拓扑排序
目录
1问题描述
2具体设计
2.1存储结构设计
2.2主要算法设计
2.2.1拓扑排序的算法总体设计
2.2.2将有向图表示为邻接表
2.2.3拓扑排序函数的设计
2.2.4顺序表的运算设计
2.3测试用例设计
3调试报告
3.1设计和编码的分析
3.2调试过程问题及解决
4经验与体会
5用户使用说明
6参考文献
7附录源代码与运行结果
1问题描述
题目:拓扑排序
如果用有向图表示一个工程,在这种有向图中,用顶点表示活动,用有向边vi,vj表示活动vi必须先于活动vj进行,这种有向图叫做顶点表示活动的网络,记作AOV网络。
对一个有向无环图G进行拓扑排序,是将G中所有顶点排成一个线性序列,使得AOV网络中的所有应存在前驱和后继的关系都能得到满足,这种构造AOV网络全部顶点的拓扑有序序列的运算叫做拓扑排序。
在AOV-网中,不应该出现有向环,用拓扑排序就可以判断网中是否有环,若网中所有顶点都在它的拓扑有序序列中,则该AOV-网必定不存在环。
进行拓扑排序步骤如下:
1、输入AOV网络即有向图。令n为顶点个数。
2、从有向图上选择一个没有入度的节点并输出。
3、从网中删去该点,同时删去从该顶点发出的全部有向边。
4、重复上述2,3,直到
(1)、全部顶点均已输出,拓扑有序序列形成,拓扑排序完成。
(2)、图中还有未输出的顶点,但已跳出处理循环。这说明图中还剩下一些顶点,它们都有直接前驱,再也找不到没有前驱的顶点了,这时AOV网络中必定存在有向环。
要求:
(1)、采用邻接表作为有向图的存储结构;
(2)、给出所有可能的拓扑序列。
2具体设计
2.1存储结构设计
本问题中,我将采用三种数据结构:邻接表,顺序表和数组。
1邻接表:邻接表是图的链式存储结构,在邻接表的存储结构中,图中的每个顶点对应一个单链表。从拓扑排序的步骤个方法来看,在整个排序过程中需要频繁地检查顶点的前驱以及作删除顶点和边的操作、恢复顶点和顶点前驱入度的操作。所以,可以采用邻接表作为有向无环图的存储结构。
为了快速的判断顶点是否有前驱,可以在表头结点中增加一个“入度域(into)”用来指示顶点当前的入度。当into域的值为0时,表明该顶点没有前驱,可以加入到结果序列中。而删除顶点及以它为起点的边操作时,可以通过把该顶点的所有邻接点的入度域减一来完成,恢复则入度域加一。
邻接表的定义如下:
typedef struct ARCNODE{ //表结点
int adjvex; //邻接点的位置
ARCNODE *nextarc;//指向下一个结点
}ARCNODE; //邻接表中的结点类型
typedef struct VEXNODE{ //头结点
int vexdata; //顶点信息
int into; //每个顶点的入度
ARCNODE *firstarc; //指向第一个邻接结点
}VEXNODE,AdjList[MAX];//邻接表的表头结点类型
typedef struct{
AdjList vexs; //表头结点数组
int vexnum
您可能关注的文档
- ]英文写作剖析.docx
- 《大学生创业基础》期末考试剖析.docx
- 《建筑模式语言》-读书笔记剖析.docx
- (北师大版)三年级数学_体育中的数学答辩.ppt
- 智力七巧板:第十五节课《一图多拼》说课.ppt
- 《随心而行:肖恩·斯库利(SeanScully)艺术展》展览词剖析.docx
- 《巫师3》全剧情任务剖析.docx
- 15.《猫》公开课完美版探索.ppt
- 15.3串联和并联1探索.ppt
- 【经传高手秘笈】缺口理论的用法,都在这了剖析.docx
- 人教新目标版英语九年级 中考模拟学情评估(三)(含答案).pdf
- 上海市风华中学2024-2025学年高三上学期9月阶段测试英语试题(无答案).pdf
- 统编版2024-2025学年语文六年级上册期末检测卷(有答案).pdf
- 人教新目标版英语九年级第二学期全册学情评估(含答案).pdf
- 内蒙古自治区巴彦淖尔市杭锦后旗第六中学2024-2025学年八年级上学期阶段性测试历史试题(解析版).pdf
- 湖南省娄底市涟源市部分学校2024-2025学年高一上学期9月月考语文试题 Word版无答案.pdf
- 湖南省衡阳市常宁市2023-2024学年七年级上学期期末考试英语试题.pdf
- 湖南省娄底市涟源市部分学校2024-2025学年高一上学期9月月考语文试题 Word版含解析.pdf
- 江苏省泰州市姜堰区城西实验学校2024-2025学年部编版九年级上学期月考历史试卷(原卷版).pdf
- 内蒙古伊金霍洛旗2022-2023学年七年级上学期期末考试英语试题.pdf
最近下载
- 中职《幼儿心理学》课程教学课件-项目二任务3 感知觉规律的运用.pptx VIP
- Hasselblad哈苏H6中文说明书.pdf
- (人教2024版)一年级数学上册《数学游戏》单元复习讲义.docx
- 木材人造板制造工艺考核试卷.docx VIP
- 百家争鸣(共张PPT)-PPT课件模版[1].pptx
- 《无障碍设施施工验收及维护规范》(GB50642—2011)的解读.pdf VIP
- 13_一等奖丨清华大学丨“三位一体,三创融合,开放共享”创新创业教育体系和平台的创建(20220427推文).pdf VIP
- 百得两用燃烧机TBML 1200 ME电子控制器调试安装说明书.pdf
- 磁共振成像原理与临床应用完整版.ppt VIP
- 人教2024版英语七年级上册Starter Unit 1- Unit 3基础知识练习(含答案).docx VIP
文档评论(0)