算法课程设计报告.doc

算法课程设计报告.doc

ID:56629950

大小:146.00 KB

页数:10页

时间:2020-06-30

算法课程设计报告.doc_第1页
算法课程设计报告.doc_第2页
算法课程设计报告.doc_第3页
算法课程设计报告.doc_第4页
算法课程设计报告.doc_第5页
资源描述:

《算法课程设计报告.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、.《算法与数据结构》课程设计报告题目:教学计划编制问题专业:计算机科学与技术班级:1002学号:1030030242姓名:巫爱萍指导教师:许文庆完成日期:2012年6月14日..一、课程设计目的本课程设计的目标就是要达到理论与实际应用相结合,提高学生组织数据及编写大型程序的能力,并培养基本的、良好的程序设计技能以及合作能力。设计中要求综合运用所学知识,上机解决一些与实际应用结合紧密的、规模较大的问题,通过分析、设计、编码、调试等各环节的训练,使学生深刻理解、牢固掌握数据结构和算法设计技术,掌握分析、解决实际问题的能力。通过这次设计,要求在数据结构的逻辑特性和物理表示、数据结构的选择和应用、

2、算法的设计及其实现等方面,加深对课程基本内容的理解。同时,在程序设计方法以及上机操作等基本技能和科学作风方面受到比较系统和严格的训练。二、课程设计内容针对计算机系本科课程,依据其相互依赖关系制定课程安排计划,其相互依赖关系如下图所示,并要求各学期课程数目大致相同且搭配适当。三、课程设计过程1.需求分析..  以无歧义的陈述说明程序设计的任务,强调的是程序要做什么?并明确规定:  (1)输入的形式和输入值的范围;创建邻接表时需要输入顶点数、边数、顶点及其入度和确定弧的两个顶点的下标。  (2)输出的形式;在主函数中输出拓扑排序序列。  (3)程序所能达到的功能;A、求解上图的拓

3、扑排序结果。B、上述课程在4学期上完,要求每学期上课的门数大致一样。(4)测试数据:创建邻接表时输入的顶点数:7创建邻接表时输入的顶点数:8创建邻接表时输入的顶点及其入度分别为:(1,0)、(2,0)、(3,1)、(4,2)、(5,2)、(6,2)、(7,1)创建邻接表时输入的确定弧的两个顶点的下标为:<1,3>、<3,4>、<2,4>、<2,7>、<2,5>、<7,6>、<4,6>、<4,5>2.概要设计   1)本程序包含7个函数:  ①主函数main()②创建邻接表函数creatgraph(algraph&g)  ③拓扑排序函数toposort(algraph&g,in

4、tn)各函数间关系如下:maincreatgraphtoposort3.详细设计..  实现概要设计中定义的所有数据类型,对每个操作只需要写出伪码算法;对主程序和其他模块也都需要写出伪码算法(伪码算法达到的详细程度建议为:按照伪码算法可以在计算机键盘直接输入高级程序设计语言程序);画出函数和过程的调用关系图。1)typedefstructarcnode{intadjvex;//intinfo;structarcnode*nextarc;}arcnode;2)typedefstructvnode{intdata;intid;structarcnode*firstarc;}vnode,adjl

5、ist[MAX_VERTEX_NUM3)typedefstruct{adjlistvertices;intvexnum,arcnum;//intkind;}algraph;4)图的基本操作为了方便用邻接表来存储有向图。algraphcreatgraph(algraph&g){inti,j,k;arcnode*p;algraphag;printf("******************************************");printf("请输入顶点数:");scanf("%d",&g.vexnum);printf("请输入边数:");scanf("%d",&g.a

6、rcnum);printf("******************************************");printf("请输入顶点:");for(i=1;i<=g.vexnum;++i){scanf("%d,%d",&g.vertices[i].data,&g.vertices[i].id);g.vertices[i].firstarc=NULL;}printf("请输入确定弧的两个顶点的下标:");for(k=1;k<=g.arcnum;++k)..{scanf("%d,%d",&i,&j);p=(arcnode*)malloc(sizeof(arc

7、node));p->adjvex=j;p->nextarc=g.vertices[i].firstarc;g.vertices[i].firstarc=p;}returnag;}5)拓扑排序的基本操作inttoposort(algraph&g,intn){inti,j,k,m=0;inttop=0;arcnode*p;//p=(arcnode*)malloc(sizeof(arcnode));for(i=1;i<=n;i

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。