Dijkstra算法的MATLAB实现

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

学号:

课程设计

题目Dijkstra算法的MATLAB实现

学院信息工程学院

专业通信工程

班级

姓名

指导教师

2012 年 1 月9 日

课程设计任务书

学生姓名:专业班级:通信 0901班

指导教师:工作单位:信息工程学院

题目: Dijkstra算法的MATLAB实现

初始条件:

(1)MATLAB应用软件的基本知识以及基本操作技能

(2)高等数学、线性代数等基础数学中的运算知识

(3)数据结构里面关于Dijkstra算法的基本原理和思想

要求完成的主要任务:

必做题:采用MATLAB选用适当的函数或矩阵进行如下计算

(1)极限的计算、微分的计算、积分的计算、级数的计算、求解代数方程、求解常微分方程;

(2)矩阵的最大值、最小值、均值、方差、转置、逆、行列式、特征值的计算、矩阵的相乘、右除、左除、幂运算;

(3)多项式加减乘除运算、多项式求导、求根和求值运算、多项式的部分分式展开、多项式的拟合、插值运算。

选做题:Dijkstra算法的MATLAB实现

时间安排:

第一周,安排任务地点:鉴主17楼实验室

第1-17,周仿真设计地点:鉴主13楼计算机实验室

第18周,完成答辩,提交报告地点:鉴主17楼实验室

指导教师签名:年月日

系主任(或责任教师)签名:年月

目录

摘要................................................................................................................................. I Abstract ......................................................................................................................... II 1 MATLAB的基本运算 .. (1)

1.1 基础微积分计算 (1)

1.1.1 极限的基本运算 (1)

1.1.2 微分的计算 (1)

1.1.3 积分的计算 (2)

1.1.4 级数的运算 (3)

1.1.5 求解代数微分方程 (3)

1.1.6 求解常微分方程 (4)

1.2 矩阵的基本运算 (5)

1.2.1 矩阵的最大最小值 (5)

1.2.2 矩阵的均值方差 (6)

1.2.3 矩阵的转置和逆 (7)

1.2.4 矩阵的行列式 (7)

1.2.5 矩阵特征值的计算 (8)

1.2.6 矩阵的相乘 (8)

1.2.7 矩阵的右除和左除 (9)

1.2.8 矩阵的幂运算 (9)

1.3 多项式的基本运算 (10)

1.3.1 多项式的四则运算 (10)

1.3.2 多项式的求导、求根、求值运算 (11)

1.3.3 多项式的部分分式展开 (12)

1.3.4 多项式的拟合 (13)

1.3.5 多项式的插值运算 (14)

2关于Dijkstra的问题描述 (15)

2.1问题的提出 (15)

2.2 Dijkstra算法的算法思想 (15)

2.3 Dijkstra算法的算法原理 (15)

3 Dijkstra算法的设计分析 (17)

3.1 Dijkstra算法部分的设计分析 (17)

3.2 程序主体的设计分析 (17)

4程序源代码与算法思想 (19)

4.1 文件isIn.m的源代码 (19)

4.2 文件default_dat.m的源代码 (19)

4.3 文件input_dat.m的源代码 (19)

4.4 文件menu.m的源代码 (20)

4.5 文件dijkstra.m的源代码 (22)

5 测试报告 (27)

6 心得体会 (30)

7 参考文献 (31)

摘要

MATLAB的功能十分强大,在本篇中,主要分别介绍了MATLAB在高等数学中微机分的一些基本运算,线性代数中矩阵的一些基本计算以及多项式中的计算,采用具体举例,然后根据具体的例子建模,然后编写m文件,然后实际调试运行来得出结果的方式来整理报告。在报告中为了计算的方便,在矩阵那一方面,我采用事先定义的方式,便于以后计算直接提取。在多项式那一大块我也是采用这种方式。还有文中有些运算需要通过画出图形来显示运算的效果,我也适当的画了图形来显示。

此外,本篇还对Dijkstra算法用MATLAB来实现,分析了Dijkstra算法的基本思想,设计思想,以及怎么样用MATLAB来进行实现。并且对实现的结果进行了分析。

关键字:基本运算、MATLAB 、 Dijkstra算法

Abstract

The function of MATLAB is very strong.The main difference I have introduced in advanced mathematics MATLAB computer points in some of the basic operations, linear algebra .Some basic calculations in the matrix and the calculation of the polynomial, using concrete examples, and then the specific .Examples of modeling, then write m file, and then to the commissioning way to organize the findings reported .In order to calculate the convenience of the report, in the matrix that one, I used the pre-defined way, to facilitate .After the calculation of direct extraction. Polynomial which is large in this way I am. There are some text.Operations need to draw a graph to show the effect of computing, I also painted the appropriate graphics to display.

In addition,the main essay I have introduced used MATLAB to enforce the Dijkstra arithmetic,analysis the basic thoughts,design thoughts of the Dijkstra arithmetic and how to use MATLAB to enforce it.Besides,the essay analysis the result of it.

Keywords: basic calculations,MATLAB, Dijkstra arithmetic

相关文档
最新文档