数据结构课程设计报告.docx

上传人:b****4 文档编号:3656657 上传时间:2022-11-24 格式:DOCX 页数:5 大小:16.72KB
下载 相关 举报
数据结构课程设计报告.docx_第1页
第1页 / 共5页
数据结构课程设计报告.docx_第2页
第2页 / 共5页
数据结构课程设计报告.docx_第3页
第3页 / 共5页
数据结构课程设计报告.docx_第4页
第4页 / 共5页
数据结构课程设计报告.docx_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

数据结构课程设计报告.docx

《数据结构课程设计报告.docx》由会员分享,可在线阅读,更多相关《数据结构课程设计报告.docx(5页珍藏版)》请在冰豆网上搜索。

数据结构课程设计报告.docx

数据结构课程设计报告

 

数据结构课程设计

 

设计说明书

 

TSP问题

 

起止日期:

2016年6月27日至2016年7月1日

 

学生姓名

 

班级

 

学号

 

成绩

指导教师(签字)

 

2016年7月1日

 

第1章

需求分析....................................................................................

1

1.1

简介..........................................................

1

1.2

系统的开发背景................................................

1

1.3

研究现状......................................................

1

第2章

概要设计....................................................................................

2

2.1

系统开发环境和技术介绍........................................

2

2.2

系统需求分析..................................................

2

2.2.1

总体功能分析..............................................

2

2.2.2

核心功能分析..............................................

3

第3章详细设计......................................................................................

4

3.1

系统开发流程..................................................

4

3.2

系统模块设计..................................................

4

3.3

系统结构......................................................

6

3.2

系统流程图....................................................

6

第4章调试分析......................................................................................

7

4.1

程序逻辑调试..................................................

7

4.2

系统界面调试..................................................

8

第5章测试结果......................................................................................

9

5.1

测试环境......................................................

9

5.2

输入输出测试项目..............................................

9

5.3

测试结果.....................................................

10

结论.........................................................................................................

11

参考文献

...................................................................................................

11

附录...........................................................................................................

12

 

第1章需求分析

 

1.1简介

 

旅行商问题,即TSP问题(TravellingSalesmanProblem)又译为旅行推销员问题、货郎担问题,是数学领域中著名问题之一。

假设有一个旅行商人要拜

访n个城市,他必须选择所要走的路径,路径的限制是每个城市只能拜访一次,而且最后要回到原来出发的城市。

路径的选择目标是要求得的路径路程为所有路径之中的最小值。

 

1.2系统的开发背景

 

TSP的历史很久,最早的描述是1759年欧拉研究的骑士周游问题,即对于国际象棋棋盘中的64个方格,走访64个方格一次且仅一次,并且最终返回到起始点。

TSP由美国RAND公司于1948年引入,该公司的声誉以及线形规划这一新方法的出现使得TSP成为一个知名且流行的问题。

 

1.3研究现状

 

TSP问题是一个组合优化问题。

该问题可以被证明具有NP计算复杂性。

因此,任何能使该问题的求解得以简化的方法,都将受到高度的评价和关注。

旅行推销员问题是图论中最著名的问题之一,即“已给一个n个点的完全图,每条边都有一个长度,求总长度最短的经过每个顶点正好一次的封闭回路”。

Edmonds,Cook和Karp等人发现,这批难题有一个值得注意的性质,对其中一个问题存在有效算法时,每个问题都会有有效算法。

迄今为止,这类问题中没有一个找到有效算法。

倾向于接受NP完全问题

(NP-Complete或NPC)和NP难题(NP-Hard或NPH)不存在有效算法这一猜想,认为这类问题的大型实例不能用精确算法求解,必须寻求这类问题的有效的近似算法。

 

第2章概要设计

 

2.1系统开发环境和技术介绍

 

MicrosoftVisualC++6.0不仅是一个C++编译器,而且是一个基于Windows操作系统的可视化集成开发环境(IDE)。

VisualC++6.0由许多组件组成,包括编辑器、调试器以及程序向导AppWizard、类向导ClassWizard等开发工具。

这些组件通过一个名为DeveloperStudio的组件集成为和谐的开发环境。

 

2.2系统需求分析

 

2.2.1总体功能分析

 

TSP问题最容易想到的也肯定能得到最佳解的算法是穷举法,即考虑所有

可能的旅行路线,从中选择最佳的一条。

但是用穷举法求解TSP问题的时间复杂度为Ο(n!

),当n大到一定程度后是不可解的。

于TSP问题,一个旅行家要穿过多个城市,已知城市个数,以及城市间距,每个城市经历且只经历一次,求出最短路径解和最短路径长度。

本实验只要求近似解,可以采用贪心法求解:

任意选择某个城市作为出发点,然后前往最近的未访问的城市,直到所有的城市都被访问并且仅被访问一次,最后返回到出发点。

输入城市数目N为正整数,城市间距离按邻接矩阵方式排列输入,最小值为0,共有N*N个数值;输出最优解和最优值。

 

2.2.2核心功能分析

 

以下是核心功能代码分析:

贪心算法排序:

为了解决问题,需要寻找一个构成解的候选对象集合,它可以优化目标函数,贪婪算法一步一步的进行。

起初,算法选出的候选对象的集合为空。

接下来的每一步中,根据选择函数,算法从剩余候选对象中选出最有希望构成解的对象。

如果集合中加上该对象后不可行,那么该对象就被丢弃并不再考虑;否则就加到集合里。

每一次都扩充集合,并检查该集合是否构成解。

如果贪婪算法正确工作,那么找到的第一个解通常是最优的。

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

当前位置:首页 > 小学教育 > 小升初

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1