邻接矩阵的应用1

邻接矩阵的应用1
邻接矩阵的应用1

目录

前言 (1)

1. 邻接矩阵发展简史 (3)

2.基本概念及记号 (4)

3. 无向图的邻接矩阵 (6)

3.1 无向图的邻接矩阵定义及表示 (6)

3.2 无向图的邻接矩阵的性质 (8)

4. 有向图的邻接矩阵 (9)

4.1 有向图的邻接矩阵的定义及表示 (9)

4.2 有向图的邻接矩阵的性质 (10)

5. 邻接矩阵的重要定理及应用 (11)

6. 邻接矩阵的应用 (13)

6.1 邻接矩阵生成图的遍历序列 (13)

6.2用邻接矩阵生成图的广度优先遍历序列 (15)

6.3 矩阵构造最小生成树 (16)

6.4 用邻接矩阵寻找关键路径 (19)

参考文献 (21)

致谢 (22)

平顶山学院本科毕业论文(设计)

前言

图论最早起源于一些数学游戏的难题研究,如欧拉所解决的哥尼斯堡七桥问题,以及在民间广泛流传的一些游戏难题.这些古老的难题,当时吸引了很多学者的注意.在这些问题研究的基础上又继续提出了著名的四色猜想和汉米尔顿(环游世界)数学难题.

1847年,图论应用于分析电路网络,这是它最早应用于工程科学,以后随着科学的发展,图论在解决运筹学,网络理论,信息论,控制论,博奕论以及计算机科学等各个领域的问题时,发挥出越来越大的作用.在人们的社会实践中,图论已成为解决自然科学、工程技术、社会科学、生物技术以及经济、军事等领域中许多问题的有力工具之一,因此越来越受到数学家和实际工作者的喜爱.我们所学的这一章只是介绍一些基本概念、原理以及一些典型的应用实例,目的是在今后对工程技术有关学科的学习研究时,可以把图论的基本知识、方法作为工具[]1.

“图论”是数学的一个分支,它以图为研究对象.图论中的图是由若干给定的点及连接两点的线所构成的图形,这种图形通常用来描述某些事物之间的某种特定关系,用点代表事物,用连接两点的线表示相应两个事物间具有这种关系.

图论是一门极有兴趣的学问,其广阔的应用领域涵盖了人类学、计算机科学、化学、环境保护、电信领域等等.严格地讲,图论是组合数学的一个分支,例如,它交叉运用了拓扑学、群论和数论.图论就是研究一些事物及它们之间关系的学科,现实世界中的许多事物能用图来表示其拓扑结构,把实际问题的研究转化为图的研究,利用图论的相关结论

对这些问题作分析或判断[]1.

图论是近二十年来发展十分迅速、应用比较广泛的一个新兴的数学分支,在许多领域,诸如物理学、化学、运筹学、信息论、控制论、计算机等方面甚至在生产生活中都有广泛的应用.因此受到全世界越来越广泛的重视。图论的内容十分丰富,涉及面也比较广.

研究节点和边组成的图形的数学理论和方法,为运筹学的一个分支。图论的基本元素是节点和边(也称线、弧、枝),用节点表示所研究的对象,用

1

邻接矩阵的应用

边表示研究对象之间的某种特定关系.因此,图论可用节点和边组成的图形及其有关的理论和方法来描述、分析和解决各种实际问题,诸如物理学、化学、生物学、管理科学、计算方法和工程技术等领域的有关问题。图论与组合数学、线性规划、群论、矩阵论、概率论、数值分析等数学分支有密切的关系.本文章所涉及的只是图论中的一些基本概念和理论,在方法上应用矩阵来研究的一些性质.用矩阵表示一个图的各种关系,不仅是给出图的一种表示方法,而且可以充分利用矩阵代数中的各种运算,来研究图的结构特征即性质,且便于计算机处理.用矩阵表示图,必须首先将图的顶点、边等分别按照某种顺序排列,然后并按照这种顺序依次给定唯一的标号,使其称为标号图,最后给出其矩阵表示[]1.

本文通过运用邻接矩阵和关联矩阵的特征,把图的运算转化称矩阵运算,运用图的一些性质,转化为矩阵,进而判断图是否具有其他性质,这就包括用邻接矩阵判断图的回路.

邻接矩阵能够简便和直观地表示一些实际意义的相应信息,在数学建模中有着非常广泛的应用. 在数学建模的过程中,经常会遇到一些可以借助图和图的邻接矩阵来处理的数学模型.用邻接矩阵来表示图具有简单、直观的特点,而且邻接矩阵能够表示图的一些实际意义的相应信息.

邻接矩阵是图的一种常用的存储结构, 具有描述简单、直观的特点, 在图的运算中, 有许多算法通常是采用邻接矩阵作为存储结构来处理的.对邻接矩阵的探讨,无疑会给图论和现实生活中许多问题的研究带来方便.

本文主要介绍了邻接矩阵的求法及其应用.首先,给出了邻接矩阵的基础定义及相关定理,并对其中定义给出解释,定理做出解释;接着,有前面的基础,探讨出邻接矩阵的求法,最后,总结邻接矩阵的应用,系统地给出它的应用的多个方面,列出实例来充分说明,这是本文的主要特色.

2

平顶山学院本科毕业论文(设计)

3

1. 邻接矩阵发展简史

1736年瑞士数学家L.欧拉发表图论的第一篇论文,解决了著名的哥尼斯堡七桥问题,因此通常认为欧拉是图论的创始人.流经东普鲁士的柯尼斯堡的普莱格尔河上有七座桥,将河中的岛和河岸连接起来(图1).长期以来人们在议论能否从A 、B 、C 、D 这四块陆地中的任何一块开始,经过所有的桥一次且仅一次,最后回到原来出发的这块陆地.当时,欧拉将每块陆地用一个点来代替,将每座桥用连接相应的两个点的一条边来代替,从而得到了一个“图”

欧拉对于一般的图提出了一个普遍的判别法则:要从图中一点出发,经过所有的边一次且仅一次,能回到原来的出发点,则这个图必须是连通的,且每个点都必须与偶数条边相关联.显然,图(1)中的各点都是连通的,但每个点都不是与偶数条边相连接,因此七桥问题不可能有解.1845年,德国物理学家G.R.基尔霍夫为了解决一类线性联立方程组而创建“树”理论.他把电网络和其中的电阻、电容和电感等抽象化,用一个只有点和边组成的组合结构来代替电网络,而不指明每条边所代表的电器元件种类,这样就可以方便地对方程组进行求解[]2.1852年 F.格思里在对地图着色时发现,无论多么复杂的地

图,只要用四种颜色就能将相邻区域区分开来。这就是所谓“四色猜想”[]2经

过百余年的努力,直到1976年才由K.阿佩尔和W.赫肯借助电子计算机证明了四色定理.1856年,W.R.哈密顿在给 R.L.格雷夫斯的信中提出一个游戏:用正十二面体上20个顶点表示20个城市,要求游戏者沿着各边行走,走遍每个城市一次且仅一次,最后回到原出发城市。这个游戏促使人们研究如何判断一个图有无这一性质,如果有,则又如何确定这样的路径。这是一个至今尚未完全解决的问题.

图(1)

邻接矩阵的应用

4

2.基本概念及记号

图 图论中所研究的图就是节点和边的集合,记作(,)G V E =,其中V 表示非空的节点集合,E 表示边的集合[]3.

在图论的研究中常用到的概念有[]3:

节点数和边数 集合V 的元素个数称为图 G 的节点数;集合E 的元素的个数称为图 G 的边数.

端点和关联边 若[,]i j e v v E =∈,则称点i v 和j v 是e 的端点,而称e 是点i v 和j v 的关联边.

相邻点和相邻边 若i v 和j v 与同一条边相关联,则i v 与j v 是相邻点;若i e 与j e 有一个共同端点,则若i e 与j e 为相邻边.

环和多重边 若边的两个端点同属一个节点,则称该边为环;若两个端点之间多于一条边,则称多重边.

多重图和简单图 含有多重边的图称为多重图;无环无多重边的图称为简单图.

次 以点v 为端点的边数称为这个点的次,记作()d v .

零图 一条边也没有的图.

子图 在研究和描述图的性质和图的局部结构中,子图的概念占有重要地位。

对于图111

(,)G V E =,222(,)G V E =,若12E E ∈,则称为1G 为2G 的子图. 连通图 如果图G 的任意两点至少有一条通路连接起来,则图G 称为连通图,否则称为不连通图.

树与图的生成树 若一个连通图中不存在任何回路,则称为树.由树的定义,直接得下列性质:

(1)树中任意两节点之间至多只有一条边:

(2)树中边数比节点数少1;

(3)树中任意去掉一条边,就变为不连通图;

(4)树中任意添加一条边,就会构成一个回路.

不难看出,任意一个连通图或者就是一个树,或者去掉一些边后形成一个树.一个连通图去掉一些边后形成的树称之为该连通图的生成树.一般来

平顶山学院本科毕业论文(设计)

5

说,一个连通图的生成树可能不止一个.

求一个连通图的生成树有一个简单算法,这个算法就是在一个连通图中破掉所有的回路,剩下不含回路的连通图就是原图一个生成树,这个算法叫做“破圈法”.

图的矩阵

图的矩阵表示一个图可以用几何图形表示,这种表示有直观形象的优点.图还可以用矩阵表示,它给出一个代数结构,从而可以运用代数的技巧解决图论问题,而且有利于在计算机上进行运算.

特别应当提到的是,20世纪70年代出现了图的拟阵理论,它的发展对图的研究起到突出的促进作用.一个图由它的邻接性和关联性完全决定,这种信息可用矩阵表示.常用的有邻接矩阵和关联矩阵等.在无向图中前后相继连接的一串边的集合称为路.在有向图中,顺向的首尾相接的一串有向边的集合称为有向路.通常用顺次的节点或边来表示路或有向路,如图(2)中,124{,,}e e e 为一条路,该路也可用1245{,,,}v v v v 来表示.起点与终点为同一节点的路称为回路(或圈).如果一个图中,任意两个节点之间都存在一条路与之相连,称这种图为连通图.

图(2)

6e 5e 3e 2e 1e 4e 5v 3v 2v 4v 1v

邻接矩阵的应用

6

3. 无向图的邻接矩阵

3.1 无向图的邻接矩阵定义及表示

定义[]4:设12,,,n v v v 是图G 的结点,则称矩阵()n n ij A a ?=为G 的邻接矩阵,其

中,

ij a 是使,i j v v 邻接的边的条数(,)i j 并且(,)i i v v 是环时,2ii a =,否则0ii a =.

例如

则上图的邻接矩阵为:

010111100110000100()111011110100100100A G ??

??

????

=????

??

????

5v

6v

1v

2v 4v

3v

平顶山学院本科毕业论文(设计)

7 再如:

它的邻接矩阵为:

A = 12345v v v v v 0210020121112100210101010????????????????

1v 2v 3v 4v 5v 5v 4v 1

v 2v 3v

邻接矩阵的应用

8

3.2 无向图的邻接矩阵的性质

性质1[]4 对角线元素全为0当且仅当图G 没有环.此时A 是对称矩阵. 性质2[]4 在没有环的图中,()i d v 等于对应行或列中1的个数.

性质3[]4 A 的第i 行(或第i 列)元素之和为结点i v 的度数(1,2,

,)i n =. 性质4[]4 给定一个对称的元素0和1的n n ?阶矩阵,则必可构造一个图G ,使G 的邻接矩阵就是所给的.

性质5[]4 零图的邻接矩阵为零矩阵.

例如图所示的图(3)和图(4).请写出其所对应的邻接矩阵

则:图(3)的邻接矩阵为:

01111011(3)11011110A ??????=??????;

图(4)的邻接矩阵为:

0011100111(4)110001

10001

1000A ????????=???????? 图(3) 图(4) 4v 3v 2v 1v 3v 4v 5v

2v 1v

平顶山学院本科毕业论文(设计)

9

4. 有向图的邻接矩阵

4.1 有向图的邻接矩阵的定义及表示

与无向图对应,有向图也有类似的表示:

定义[]5: 设12,,,n v v v 是有向图D 的结点,称矩阵()ij n n A a ?=为D 的邻接矩阵,其中ij a 是以i v 为始点,j v 为终点的边的条数(,1,2,,)i j n =.

我们再来看一个简单有向图D 如图(5):

有向图D 的邻接矩阵为:

0210

001

0001

0011

A ??????=??????;

图(5)

4v

2v

1v 3v

邻接矩阵的应用

10

4.2 有向图的邻接矩阵的性质

由定义知,有向图D 的邻接矩阵A 具有以下性质

[]5.

性质1 简单图的邻接矩阵是一个0,1的矩阵:对角线元素为0,但不一定对称. 性质2 矩阵的各行和是相应顶点的出度,各个列和是相应顶点的入度.所有元素相加的和与边数相等.

性质 3 矩阵n A 的,i j 位置元素为由i v 到j v 的长度等于n 的通路的数目,而,i i 位置的元素为i v 到自身的回路的数目.

练习:分别画出给出的邻接矩阵5A 和6A 所对应的无向图5G 和有向图6G .

60111101111001100A ??????=?????? : 70100010001010101000000010A ????????=????????

;

图分别为:

V 4 V 3 V 2 V 1 V 0 图(7) V 2 V 1 V 0 V 3 图(6)

平顶山学院本科毕业论文(设计)

11

5. 邻接矩阵的重要定理及应用

再观察4.1节 图(5):

在图(5)中,我们可以计算出2A ,3A ,4A 如下:

20021000100110012A ??????=??????; 30013001100120023A ??????=??????; 40034001200230035A ??????=??????

观察各矩阵不难看出,D 中2v 到4v 长度为1,2,3,4的通路为别为0,12条。4v 到自身长度为1,2,3,4的回路分别为1,2,3,5条,其中有复杂回路。D 中长度小于或等于4的通路有53条.

从上述分析可得下面定理:

定理[]6 设A 为有向图D 的邻接矩阵, A =1,2,{......}n v v v ,则G 中从顶点i v 走一步到j v 由归纳假设从i v 到j v 长为k 的道路条数为k A 中的i 行j 列元素.

证:对k 用数学归纳法.

1k =时.显然结论成立:假设k 时定理成立,考虑1k +的情形.

记l A 的i 行j 列元素为()l ij a ,2l ≥,因为1l l A A A +?=,所以

11122......l l l l ij i j i j in nj a a a a a a a +=+++

而从i v 到j v 长1k +的道路为非是从i v 经k 步到某项l v ,1l n ≤≤,在从l v 走一步到到j v .由归纳假设从i v 到l v 长为k 的道路总计k il a 条,而从l v 到j v 长为1的道路为lj a 条,所以长为k+1的从i v 经k 步到l v 再走一步到j v 的道路总数共有()k il lj a a 条,故从i v 经 k+1步到j v 的路径共有1()1n k k ij

il lj l a a a +==∑.

邻接矩阵的应用

12

练习:求出图(8)中有向图的邻接矩阵A ,找出从1v 到4v 长度为2和4的路,

用计算2A ,3A 和4A 来验证这结论

如图(8)所示;

解:1v 到4v 长度2的路有1条:124v v v ;长度为4的路有3条:12324v v v v v ,12424v v v v v 和14324v v v v v .

0101001101000

110A ??????=?????? ; 20121021000110111A ??????=??????

30321012202100

221A ??????=?????? ; 40343043101220332A ??????=??????

图(8) 2v 1v

3v 4v

平顶山学院本科毕业论文(设计)

13 6. 邻接矩阵的应用

6.1 邻接矩阵生成图的遍历序列

图的遍历是从图中某一顶点出发访遍图中其余顶点, 且使每一个顶点仅被访问一次。遍历图的过程实质是通过边或弧找邻接点的过程.

深度优先遍历()dfs , 假设初始态是图中所有顶点未曾被访问, 从图中某个顶点1V 出发, 访问此顶点, 然后依次从1V 的未被访问的邻接点出发深度优先遍历图, 直至图中所有和1V 有路径相通的顶点都被访问到; 若此时图中还有未被访问的顶点, 则从一个未被访问的顶点开始,重复上述过程, 直至图中所有顶点都被访问为止.显然, 这是一个复杂的递归过程[]7.

对一个较复杂的图, 用邻接矩阵生成dfs 序列是一件容易的事.我们称,i j V V 是(,)i j V V 或,i j V V <> 的左、右关联顶, 第一个被访问的顶称出发顶[]7.基本步骤如下

[]7:

①、构造图的邻接矩阵[]7.

②、将所有相关边或弧依“(,)(,)i j j k V V V V →或,,i j j k V V V V <>→<>”法则串连成一个或多个“非闭合”的边或弧线性表, 直至串接的边或弧数为1n -.

③、出发顶与右关联顶顺序连接为dfs 序列.

例如生成2G 图(9)的dfs 序列.

图(9) 2G

⑨ ⑧ ⑦

⑥ ⑤

③ ② ①

邻接矩阵的应用

14

先构造2G 的邻接矩阵图(10) []7.

0100011001010001000101000100

010100100001010011

000100011100000110

01100101000011110????????????????????????????

根据步骤②生成边线性表:

(1,2)(2,3)(3,4)(4,5)(5,6)(6,9)(9,7)(7,8)→→→→→→→

2G 的dfs 序列是: 123456978, 在深度优先遍历中, 由于在访问了出发顶点①后接下来访问顶点②或⑥或⑦都是随机的.因此, 根据步骤②还可生多种边线性表.如:

(1,6)(6,5)(5,4)(4,3)(3,2)(2,7)(7,8)(8,9)→→→→→→→

对应的dfs 序列是: 1 6 5 4 3 2 7 8 9

图(10)

平顶山学院本科毕业论文(设计)

15

6.2用邻接矩阵生成图的广度优先遍历序列

广度优先遍历()bfs , 假设初始态是图中所有顶点未曾被访问, 从图中某个顶点1V 出发, 访问此顶点, 然后依次访问1V 的未被访问的各邻接点; 再分别从这些邻接点出发广度优先遍历图, 直至图中所有已被访问的顶点的邻接点都被访问到; 若此时图中还有未被访问的顶点, 则从一个未被访问的顶点开始, 重复上述过程, 直至图中所有顶点都被访问为止.然, 这也是一个复杂的递归过程.

用邻接矩阵生成bfs 序列的基本步骤如下

[]7: ①、构造图的邻接矩阵[]7.

②、将所有相关边或弧依“(,)(,)i j j k V V V V →或,,i j j k V V V V <>→<>”法则串连成一个或多个“非闭和”的边或弧线性表, 直至串接的边或弧数为1n -.

③、出发顶与右关联顶顺序连接为bfs 序列.

例如生成3G 图(11) (的bfs 序列)

⑦ ⑥ ⑤ ④ ③ ② ① 图(11) 3G

邻接矩阵的应用

16

先构造3G 的邻接矩阵( 图12).

0111100000001000000100

00000100000000

0001000000110?????????????????????

?

根据步骤②生成弧线性表:

1,21,31,41,52,64,7<>→<>→<>→<>

<>

<>

对应的bfs 序列是: 1234567

6.3 矩阵构造最小生成树

设(,)G V E = 是一个带权无向连通图(连通网) ,G 的邻接矩阵通常称为耗费矩阵, 矩阵的元素定义如下[]8:

[,]0

ij C A i j ??=??∞? 其中ij C 是边(,)i j V V 上的权值, ∞ 表示顶点i 和j 之间没有边相连.构造连通网的最小生成树, 要求尽可能选取权值最小的边, 且不能构成回路, 选取1n -条恰当的边连接网的n 个顶点.

图(12)邻接矩阵;邻接矩阵构造最小生成树的基本步骤如下[]8:

图12 3G ;(,)(),i j v v E G i j ∈≠ ;i=j ;否则

平顶山学院本科毕业论文(设计)

17

0111100000001000000100

00000100000000

0001000000110??????????????????????

①、作带权无向连通图G 的下三角邻接矩阵A .

②、从A 中一次性顺序选取(1)n -条不重复的权值最小的边(设边的形式为(左顶,右顶,权值)) ,连接G 中的m 个顶点,同时在A 中将这(1)n -条边的权值归零.

③、若存在回路,去掉各回路上权值最大的一条边,设去掉的边数为f . ④、从A 中一次性顺序选取f 条不重复的权值最小的边,连接G 中的k 个顶点, 同时在A 中将这f 条边的权值归零.重复③

⑤、直至选出(1)n -条不构成回路的权值最小的边为止. 例如构成4G 图(13)生成树图(14)

图(12)的邻接矩阵 图(14) 8 7 5 6 2 1 4 1 3 6 2 2 4 3 2 图(13) 4G ⑨ ⑧ ⑦ ⑥ ⑤ ④ ③ ② ① 1 2 8 5 2 2 2 1 3 ⑨ ⑧ ⑦ ⑥ ⑤ ④ ③ ② ①

邻接矩阵的应用

18

① 、先作4G 的邻接矩阵图(15)

020*******

60360283025140????????∞??∞

∞????∞∞∞??∞∞∞????∞∞∞∞??∞

∞∞∞????∞∞∞∞?

?

②、一次性顺序选取8条权值最小的边:

(5,4,1),(9,7,1),(2,1,2),(4,3,2),(8,3,2),(9,5,2),(7,1,3),(8,7,3).

③、“⑦⑨⑤④③⑧⑦”是一条回路,去掉(8,7,3)

.

④、因(3,2,4) 和(9,8,4)亦会构成回路, 放弃之, 选取(9,6,5) .上述8条边连接4G 中9个顶点, 构成了4G 的最小生成树.

图(15) 4G 的邻接矩阵

图的邻接矩阵存储结构建立汇总

课程名称: 《数据结构》课程设计课程设计题目:图的邻接矩阵存储结构建立 姓名:XXX 院系:计算机学院 专业:计算机科学技术 年级:11级 学号:XXXXXXXX 指导教师:XXX 2013年9月28日

目录 1 课程设计的目的 (3) 2需求分析 (3) 3 课程设计报告内容 (3) 3.1 概要设计 (3) 3.2 详细设计 (4) 3.3 调试分析 (5) 3.4 用户手册 (5) 3.5 程序清单 (5) 3.6 测试结果 (10) 4 小结 (12) 5 参考文献 (12)

1.课程设计的目的 (1) 熟练使用 C 语言编写程序,解决实际问题; (2) 了解并掌握数据结构与算法的设计方法,具备初步的独立分析和设计能力; (3) 初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能; (4) 提高综合运用所学的理论知识和方法独立分析和解决问题的能力; 2.需求分析 问题描述:建立图的邻接矩阵存储结构(图的类型可以是有向图或有向网、无向图或无向网,学生可以任选一种类型),能够输入图的顶点和边的信息,并存储到相应存储结构中,而后给出图的DFS,BFS次序。 要求: ①先任意创建一个图; ②图的DFS,BFS的递归和非递归算法的实现。 3.课程设计报告内容 3.1概要设计 1.函数 ①主函数:main( ) ②创建无向图:CreateGraph( )

③深度优先遍历图:DFS( ) ④广度优先遍历图:BFS( ) 3.2详细设计 1.使用邻接矩阵作为图的存储结构,程序中主要用到的抽象数据类型: typedef struct { char vexs[MAX]; //顶点向量 int arcs[MAX][MAX]; //邻接矩阵 int vexnum,arcnum; //图的当前顶点数和弧数}Graph; 2.程序流程图:

矩阵的逆的研究及应用

矩阵的逆的研究及应用 摘要 本文主要是对高等代数中的矩阵的逆进行研究,更深一步地了解矩阵的逆在数学领域中的重要地位和各方面的应用。首先总结阐述矩阵的逆的相关定义、定理和性质,并且对其给出相应的证明,然后归纳了矩阵的逆的几种常见求法,最后讲述了矩阵的逆在以下两个方面的应用:解线性方程组和保密通信,而且例举了具体的应用实例。 关键词:矩阵矩阵的逆线性方程组保密通信 Research and application of inverse matrix Summary:This paper mainly research on the inverse of the matrix in higher algebra, deeper understanding of the inverse of the matrix in all aspects of the important position in the field of mathematics and application. First summarized in this paper, the related definitions, theorems and properties of the inverse of the matrix, and the corresponding proofs are given, and then sums up several kinds of common method of inverse of the matrix, and finally tells the inverse of the matrix in the application of the following two aspects: solving system of linear equations and secure communications, and illustrates the concrete application examples. Key Words: matrix , inverse of a matrix ,linear system of equaton, secure

矩阵的简单应用1

2.6矩阵的简单应用(1) 学习目标: 1、初步了解高阶矩阵; 2、了解矩阵的简单应用。 活动过程: 活动一:矩阵在数学领域中的简单应用 例1:已知盒子A 中装有3只大小和重量相同的小球,其中2只黑色,1只白色;盒子B 中 装有5只大小和重量相同的小球,其中3只黑色,2只白色。假定A ,B 两个盒子很难分辨,而且可以任取一个,现在要求先取一个盒子,那么从中摸到一只黑色小球的概率有多大? 例2:如图所示的是A ,B ,C 这3个城市间的交通情况,小月想从其中某一个城市出发直 达另一个城市,她可以有几种选择? 小结:网络图,结点,一级路矩阵,二级路矩阵的定义。 例3:已知一级路矩阵???? ??????002001210表示一个网络图,它的结点分别是A ,B ,C ,试画出满足条件的一个网络图。

活动二:矩阵在实际生产、生活中的简单应用 例4:某运动服销售店经销A,B,C,D4种品牌的运动服,其中尺寸分别有S(小号)、M (中号)、L(大号)、XL(特大号)4种,一天内,该店的销售情况如表所示(单位:件): 假设不同品牌的运动服的平均利润是A为20元/件,B为15元/件,C为30元/件,D为25元/件,问:M号的运动服在这天获得的总利润是多少? 活动五:课堂小结与自主检测 1、已知某蛋糕厂生产甲、乙、丙3种蛋糕,其配料用量分别如下表(单位:kg)。已知水 果、奶油、白糖、面粉的单价分别为5,8,2,2.5,(单位:元/kg),试计算甲、乙、丙3

2、写出图示网络表示的一级路矩阵(图(2)的圆圈表示自己到自己有一条路)。 图(1) 3、假设某市的天气分为晴和阴两种状态,若今天晴,则明天晴的概率为43,阴的概率为41 ;若今天阴,则明天晴的概率为31,阴的概率为32 。这些概率可以通过观察某市以往几年 每天天气的变化趋势来确定,通常将用矩阵来表示的这种概率叫做转移概率,对应的矩阵叫做转移矩阵,而将这种以当前状态来预测下一时段状态的概率模型称做马尔可夫链。下面给出的是转移矩阵M 和其对应的马尔可夫变换图。问:如果清晨天气预报报告今天阴的概率为21,那么明天的天气预报会是什么?后天呢? ?? ??? ? = 3 24 13143M 阴 晴阴晴明天今天 (1) (2) 4、现有甲、乙两种细菌,它们会相互突变。每1min ,甲种细菌突变为乙种细菌的概率为0.3,乙种细菌突变为甲种细菌的概率为0.9,而未突变的细菌仍然是原来的细菌。已知开始时有甲种细菌300万个,乙种细菌500万个。 (1)细菌突变的转移矩阵是多少? (2)3min 后,甲种和乙种细菌各是多少? 4 3 32

图论应用案例

题目:最小生成树在城市交通建设中的应用 姓名: 学号: 指导老师: 专业:机械工程 2014年3月16

目录 摘要..................................................................................... 错误!未定义书签。 1 绪论 (1) 2 有关最小生成树的概念 (2) 3 prim算法介绍 (3) 4 系统设计及其应用 (5) 一、系统设计 (5) 二、最小生成树应用 (8) 5 总结 (11) 参考文献 (12) 附件: (13)

最小生成树在城市交通建设中的应用 摘要:连通图广泛应用于交通建设,求连通图的最小生成树是最主要的应用。比如要在n个城市间建立通信联络网,要考虑的是如何保证n点连通的前提下最节省经费,就应用到了最小生成树。 求图的最小生成树有两种算法,一种是Prim(普里姆)算法,另一种是Kruskal(克鲁斯卡尔)算法。 本文通过将城市各地点转换成连通图,再将连通图转换成邻接矩阵。在Microsoft Visual C++上,通过输入结点和权值,用普里姆算法获得权值最小边来得到最小生成树,从而在保证各个地点之间能连通的情况下节省所需费用。 本文从分析课题的题目背景、题目意义、题目要求等出发,分别从需求分析、总体设计、详细设计、测试等各个方面详细介绍了系统的设计与实现过程,最后对系统的完成情况进行了总结。 关键字:PRIM算法、最小生成树、邻接矩阵、交通建设

Abstract Connected graph is widely applied in traffic construction, connected graph of minimum spanning tree is the main application.Such as to establish a communication network between the n city, want to consider is how to ensure n points connected under the premise of the most save money, apply to the minimum spanning tree. O figure there are two kinds of minimum spanning tree algorithm, one kind is Prim (she) algorithm, the other is a Kruskal algorithm (Kruskal). In this article, through the city around point into a connected graph, then connected graph is transformed into adjacency matrix.On Microsoft Visual c + +, through the input nodes and the weights, gain weight minimum edge using she algorithm to get minimum spanning tree, which in the case of guarantee every location between connected to save costs. Based on the analysis topic subject background, significance, subject requirements, etc, from requirements analysis, general design, detailed design, testing, and other aspects detailed introduces the system design and implementation process, finally the completion of the system are summarized. Key words: PRIM algorithm, minimum spanning tree, adjacency matrix, traffic construction

广义逆矩阵及其应用

题目广义逆矩阵及其应用学院 专业通信与信息系统学生 学号

目录 第一章前言 (1) 第二章广义逆矩阵 (2) §2.1 广义逆矩阵的定义 (2) §2.2 广义逆矩阵的性质 (3) 第三章广义逆矩阵的计算 (12) §3.1 一般广义逆求解 (12) §3.2 Moore-Penrose 广义逆 (16) 结论 (19)

第一章前言 线性方程组的逆矩阵求解方法只适用于系数矩阵为可逆方阵,但是对于一般线性方程组,其系数矩阵可能不是方阵或是不可逆的方阵,这种利用逆矩阵求解线性方程组的方法将不适用。为解决这种系数矩阵不是可逆矩阵或不是方阵的线性方程组,我们对逆矩阵进行推广,研究广义逆矩阵,利用广义逆矩阵求解线性方程组。 广义逆矩阵在数据分析、多元分析、信号处理、系统理论、现代控制理论、网络理论等许多领域中有着重要的应用,本文针对广义逆矩阵的定义、性质、计算及其在线性方程组中的应用进行研究,利用广义逆矩阵求解线性方程组的通解及极小数解。 逆矩阵的概念只对非奇异矩阵才有意义,但在实际问题中,遇到的矩阵不一定是方阵,即使是方阵也不一定非奇异,这就需要将逆矩阵的概念进行推广。为此,人们提出了下述关于逆矩阵的推广: (1)该矩阵对于奇异矩阵甚至长方矩阵都存在; (2)它具有通常逆矩阵的一些性质; (3)当矩阵非奇异时,它即为原来的逆矩阵。 满足上面三点的矩阵称之为广义逆矩阵。 1903年,瑞典数学家弗雷德霍姆开始了对广义逆矩阵的研究,他讨论了关于积分算子的一种广义逆。1904年,德国数学家希尔伯特在广义格林函数的讨论中,含蓄地提出了微分算子的广义逆。美国芝加哥的穆尔(Moore)教授在1920年提出了任意矩阵广义逆的定义,他以抽象的形式发表在美国数学会会刊上。我国数学家曾远荣和美籍匈牙利数学家·诺伊曼及其弟子默里分别在1933年和1936年对希尔伯特空间中线性算子的广义逆也作过讨论和研究。1951年瑞典人布耶尔哈梅尔重新给出了穆尔(Moore)广义逆矩阵的定义,并注意到广义逆矩阵与线性方程组的关系。1955年,英国数学物理学家罗斯(Penrose)以更明确的形式给出了与穆尔(Moore)等价的广义逆矩阵定义,因此通称为Moore-Penrose广义逆矩阵,从此广义逆矩阵的研究进入了一个新阶段。现如今,Moore-Penrose广义逆矩阵在数据分析、多元分析、信号处理、系统理论、现代控制理论、网络理论等许多领域中有着重要的应用,使这一学科得到迅速发展,并成为矩阵论的一个重要分支。 第二章广义逆矩阵

图的邻接矩阵和邻接表相互转换

图的邻接矩阵和邻接表相互转换 图的邻接矩阵存储方法具有如下几个特征:1)无向图的邻接矩阵一定是一个对称矩阵。 2)对于无向图的邻接矩阵的第i 行非零元素的个数正好是第i 个顶点的度()i v TD 。3)对于有向图,邻接矩阵的第i 行非零元素的个数正好是第i 个顶点的出度()i v OD (或入度 ()i v ID ) 。4)用邻接矩阵方法存储图,很容易确定图中任意两个顶点之间是否有边相连;但是,要确定图中有多少条边,则必须按行、按列对每个元素进行检测,所发费得时间代价大。 邻接表是图的一种顺序存储与链式存储相结合的存储方法。若无向图中有n 个顶点、e 条边,则它的邻接表需n 个头结点和2e 个表结点。显然,在边稀疏的情况下,用邻接表表示图比邻接矩阵存储空间。在无向图的邻接表中,顶点i v 的度恰好是第i 个链表中的结点数,而在有向图中,第i 个链表中结点个数是顶点i v 的出度。 在建立邻接表或邻逆接表时,若输入的顶点信息即为顶点的编号,则建立临接表的时间复杂度是)(e n O +;否则,需要通过查找才能得到顶点在图中位置,则时间复杂度为)*(e n O 。在邻接表上容易找到任意一顶点的第一个邻接点和下一个邻接点,但要判断任意两个顶点之间是否有边或弧,则需要搜索第i 个或第j 个链表,因此,不及邻接矩阵方便。 邻接矩阵和邻接表相互转换程序代码如下: #include #define MAX 20 //图的邻接表存储表示 typedef struct ArcNode{ int adjvex; //弧的邻接定点 char info; //邻接点值 struct ArcNode *nextarc; //指向下一条弧的指针 }ArcNode; typedef struct Vnode{ //节点信息 char data; ArcNode *link; }Vnode,AdjList[MAX]; typedef struct{ AdjList vertices; int vexnum; //节点数 int arcnum; //边数

简单实用的基于Java的矩阵类

简单实用的Java矩阵基本操作。包括新建、打印、加、减、乘、转置、求逆运算。import java.util.Random; public class Matrix { public int row; public int rank; public double[][] mat; public Matrix(int a, int b) { row = a; rank = b; mat = new double[row][rank]; } public void New(){ Random rand=new Random(); for (int i = 0; i < row; i++) for (int j = 0; j < rank; j++) mat[i][j]=rand.nextInt(100); } public void Output() { System.out.println("Matrix=:"); for (int i = 0; i < row; i++) { for (int j = 0; j < rank; j++) System.out.print(mat[i][j] + " "); System.out.println(); } System.out.println(); } public Matrix Plus(Matrix a) { Matrix c=new Matrix(row,rank); if (a.row == row && a.rank == rank) { for (int i = 0; i < row; i++) for (int j = 0; j < rank; j++) c.mat[i][j] = mat[i][j] + a.mat[i][j]; } else { System.out.println("matrixAdd error!"); } return c; } public Matrix Minus(Matrix a) { Matrix c=new Matrix(row,rank); if (a.row == row && a.rank == rank) {

矩阵的逆及其应用教学内容

矩阵的逆及其应用

矩阵的逆及其应用 姓名:刘欣 班级:14级数计1班 专业:数学与应用数学 学号:1408020129 一、矩阵的逆的概念 对于n阶矩阵A,如果有一个n阶矩阵B,使得 AB=BA=E,则说矩阵A是可逆的,并把矩阵B称为 A的逆矩阵,A的逆矩阵记作。 二、逆矩阵的性质和定理 ㈠逆矩阵的性质 1、若矩阵A、B均可逆,则矩阵AB可逆,其逆矩阵为 ,当然这一性质可以推广到多个矩阵相乘的逆。 若都是n阶可逆矩阵,则 也可逆,且= . 2、若A可逆,则也可逆,且=A; 3、若A可逆,实数λ≠0,则λA可逆,且 =; 4、若A可逆,则也可逆,且=; 5、=;

6、矩阵的逆是唯一的; 证明:运用反证法,如果A是可逆矩阵,假设B,C都 是A的逆,则有AB=BA=E=AC=CA,B=B E=B(AC)=(BA)C=EC=C(与B≠C 矛盾),所以是唯一的。 ㈡逆矩阵的定理 1、初等变换不改变矩阵的可逆性。 2、n阶矩阵可逆的充分必要条件是A与n阶单位阵等价。 3、n阶矩阵A可逆的充分必要条件是A可以表成一些初等矩阵的乘积。 4、n阶矩阵可逆的充分必要条件是A只经过一系列初等行变换便可化成单位矩阵。 5、n阶矩阵A可逆的充分必要条件是|A|≠0。 三、逆矩阵的计算方法 ㈠定义法 定义:设A是n阶方阵,如果存在n阶方阵B使得AB=E,那么A称为可逆矩阵,B称为A的逆矩阵,记为。 例1、求矩阵A=的逆矩阵。 解:∵|A|≠0 ∴存在

设=,由定义知,∴ 由矩阵乘法得 由矩阵相乘可解得;; 故 ㈡、伴随矩阵法 n阶矩阵A=()可逆的充要条件|A|≠0,而且当 n(n>=2)阶矩阵A有逆矩阵, 注释:①对于阶数较低(一般不超过3阶)或元素的代数余 子式易于计算的矩阵可用此法求其逆矩阵,注意 元素的位置及符号。特别对于2阶方阵A=,其伴随矩阵 ,即伴随矩阵具有“主对角元素互换,次对角元素变号”的规律。

数据结构课程设计-图的邻接矩阵

数据结构 课程设计报告 设计题目:图的邻接矩阵存储结构 院系计算机学院 年级x 级 学生xxxx 学号xxxxxxxxxx 指导教师xxxxxxxxx 起止时间10-6/10-10 2013年10月10日

目录 1 需求分析 (4) 2 概要设计 (4) 2.1 ADT描述 (4) 2.2程序模块结构 (5) 2.3各功能模块 (6) 3详细设计 (7) 3.1类的定义 (7) 3.2 初始化 (8) 3.3 图的构建操作 (8) 3.4 输出操作 (9) 3.5 get操作 (9) 3.6 插入操作 (10) 3.7 删除操作 (100) 3.8 求顶点的度操作 (111) 3.9 深度遍历作 (11) 3.10 判断连通操作 (12) 3.11 主函数 (13) 4 调试分析 (16) 4.1调试问题 (16) 4.2 算法时间复杂度 (16) 5用户手册 (16) 5.1主界面 (16) 5.2 创建图 (17) 5.3插入节点 (17) 5.4 深度优先遍历 (17) 5.5 求各顶点的度 (18) 5.6 输出图 (18) 5.7 判断是否连通 (19) 5.8 求边的权值 (19) 5.9 插入边 (19) 5.10 删除边 (20) 结论 (20) 参考文献 (20)

摘要 随着计算机的普及,涉及计算机相关的科目也越来越普遍,其中数据结构是计算机专业重要的专业基础课程与核心课程之一,为适应我国计算机科学技术的发展和应用,学好数据结构非常必要,然而要掌握数据结构的知识非常难,所以对“数据结构”的课程设计比不可少。本说明书是对“无向图的邻接矩阵存储结构”课程设计的说明。 首先是对需求分析的简要阐述,说明系统要完成的任务和相应的分析,并给出测试数据。其次是概要设计,说明所有抽象数据类型的定义、主程序的流程以及各程序模块之间的层次关系,以及ADT描述。然后是详细设计,描述实现概要设计中定义的基本功操作和所有数据类型,以及函数的功能及代码实现。再次是对系统的调试分析说明,以及遇到的问题和解决问题的方法。然后是用户使用说明书的阐述,然后是测试的数据和结果的分析,最后是对本次课程设计的结论。 关键词:网络化;计算机;对策;图;储存。

矩阵分解及其简单应用

矩阵分解是指将一个矩阵表示为结构简单或具有特殊性质若干矩阵之积或之和,大体分为三角分解、分解、满秩分解和奇异值分解.矩阵地分解是很重要地一部分内容,在线性代数中时常用来解决各种复杂地问题,在各个不同地专业领域也有重要地作用.秩亏网平差是测量数据处理中地一个难点,不仅表现在原理方面,更表现在计算方面,而应用矩阵分解来得到未知数地估计数大大简化了求解过程和难度. 矩阵地三角分解 如果方阵可表示为一个下三角矩阵和一个上三角矩阵之积,即,则称可作三角分解.矩阵三角分解是以消去法为根据导出地,因此矩阵可以进行三角分解地条件也与之相同,即矩阵地前个顺序主子式都不为,即.所以在对矩阵进行三角分解地着手地第一步应该是判断是否满足这个前提条件,否则怎么分解都没有意义.矩阵地三角分解不是唯一地,但是在一定地前提下,地分解可以是唯一地,其中是对角矩阵.矩阵还有其他不同地三角分解,比如分解和分解,它们用待定系数法来解求地三角分解,当矩阵阶数较大地时候有其各自地优点,使算法更加简单方便.资料个人收集整理,勿做商业用途 矩阵地三角分解可以用来解线性方程组.由于,所以可以变换成,即有如下方程组:资料个人收集整理,勿做商业用途 先由依次递推求得,,……,,再由方程依次递推求得,,……,. 资料个人收集整理,勿做商业用途 必须指出地是,当可逆矩阵不满足时,应该用置换矩阵左乘以便使地个顺序主子式全不为零,此时有:资料个人收集整理,勿做商业用途 这样,应用矩阵地三角分解,线性方程组地解求就可以简单很多了. 矩阵地分解 矩阵地分解是指,如果实非奇异矩阵可以表示为,其中为正交矩阵,为实非奇异上三角矩阵.分解地实际算法各种各样,有正交方法、方法和方法,而且各有优点和不足.资料个人收集整理,勿做商业用途 .正交方法地分解 正交方法解求分解原理很简单,容易理解.步骤主要有:)把写成个列向量(,,……,),并进行正交化得(,,……,);) 单位化,并令(,,……,),(,,……,),其中;). 这种方法来进行分解,过程相对较为复杂,尤其是计算量大,尤其是阶数逐渐变大时,就显得更加不方便.资料个人收集整理,勿做商业用途 .方法地分解 方法求分解是利用旋转初等矩阵,即矩阵()来得到地,()是正交矩阵,并且(()).()地第行第列 和第行第列为,第行第列和第行第列分别为和,其他地都为.任何阶实非奇异矩阵可通过左连乘()矩阵(乘积为)化为上三角矩阵,另,就有.该方法最主要地是在把矩阵化为列向量地基础上找出和,然后由此把矩阵地一步步向上三角矩阵靠近.方法相对正交方法明显地原理要复杂得多,但是却计算量小得多,矩阵()固有地性质很特别可以使其在很多方面地应用更加灵活.资料个人收集整理,勿做商业用途 .方法地分解 方法分解矩阵是利用反射矩阵,即矩阵,其中是单位列向量,是正交矩阵,.可以证明,两个矩阵地乘积就是矩阵,并且任何实非奇异矩阵可通过连乘矩阵(乘积为)化为上三角矩阵,则.这种方法首要地就是寻找合适地单位列向量去构成矩阵,

数据结构与算法-图的邻接矩阵

实验报告实验日期:数据结构与算法课程: 图的邻接矩阵实验名称: 一、实验目的掌握图的邻接矩阵 二、实验内容必做部分 、给出图的邻接矩阵存储结构的类型定义。1 -1。v,返回其在vexs数组中的下标,否则返回2、实现LocateVex(G,v)操作函数:若找到顶点。、实现算法7.2(构造无向网)3&G) Status CreateUDN(MGraph 设计并实现无向网的输出算法,要求能显示顶点以及顶点之间的邻接关系(方式自定)4、 并进行输出。要求给出至少两组测试数据。在主函数中调用CreateUDN创建一个无向网,5、 选做部分 类型)编写下述操作函数:基于图的邻接矩阵存储结构(即MGraph若找不到这样返回该邻接点在顶点数组中的下标;1个邻接点,1、求下标为v的顶点的第-1。的邻接点,返回int FirstAdjVex(MGraph G,int v) 的顶点的下一个邻接点,返回该邻接点的下标;若w求下标为v的顶点相对于下标为2、找不到这样的邻接点,返回-1。 int NextAdjVex(MGraph G,int v,int w) 在主函数调用上述函数,给出测试结果。 三、实验步骤 必做部分 给出图的邻接矩阵存储结构的类型定义。、 1.

2、实现LocateVex(G,v)操作函数:若找到顶点v,返回其在vexs数组中的下标,否则返回-1。 3、实现算法7.2(构造无向网)。 &G) CreateUDN(MGraph Status

设计并实现无向网的输出算法,要求能显示顶点以及顶点之间的邻接关系(方式自定)、

4. 要求给出至少两组测试数据。并进行输出。、在主函数中调用CreateUDN创建一个无向网,5

邻接矩阵的应用1

目录 前言 (1) 1. 邻接矩阵发展简史 (3) 2.基本概念及记号 (4) 3. 无向图的邻接矩阵 (6) 3.1 无向图的邻接矩阵定义及表示 (6) 3.2 无向图的邻接矩阵的性质 (8) 4. 有向图的邻接矩阵 (9) 4.1 有向图的邻接矩阵的定义及表示 (9) 4.2 有向图的邻接矩阵的性质 (10) 5. 邻接矩阵的重要定理及应用 (11) 6. 邻接矩阵的应用 (13) 6.1 邻接矩阵生成图的遍历序列 (13) 6.2用邻接矩阵生成图的广度优先遍历序列 (15) 6.3 矩阵构造最小生成树 (16) 6.4 用邻接矩阵寻找关键路径 (19) 参考文献 (21) 致谢 (22)

平顶山学院本科毕业论文(设计) 前言 图论最早起源于一些数学游戏的难题研究,如欧拉所解决的哥尼斯堡七桥问题,以及在民间广泛流传的一些游戏难题.这些古老的难题,当时吸引了很多学者的注意.在这些问题研究的基础上又继续提出了著名的四色猜想和汉米尔顿(环游世界)数学难题. 1847年,图论应用于分析电路网络,这是它最早应用于工程科学,以后随着科学的发展,图论在解决运筹学,网络理论,信息论,控制论,博奕论以及计算机科学等各个领域的问题时,发挥出越来越大的作用.在人们的社会实践中,图论已成为解决自然科学、工程技术、社会科学、生物技术以及经济、军事等领域中许多问题的有力工具之一,因此越来越受到数学家和实际工作者的喜爱.我们所学的这一章只是介绍一些基本概念、原理以及一些典型的应用实例,目的是在今后对工程技术有关学科的学习研究时,可以把图论的基本知识、方法作为工具[]1. “图论”是数学的一个分支,它以图为研究对象.图论中的图是由若干给定的点及连接两点的线所构成的图形,这种图形通常用来描述某些事物之间的某种特定关系,用点代表事物,用连接两点的线表示相应两个事物间具有这种关系. 图论是一门极有兴趣的学问,其广阔的应用领域涵盖了人类学、计算机科学、化学、环境保护、电信领域等等.严格地讲,图论是组合数学的一个分支,例如,它交叉运用了拓扑学、群论和数论.图论就是研究一些事物及它们之间关系的学科,现实世界中的许多事物能用图来表示其拓扑结构,把实际问题的研究转化为图的研究,利用图论的相关结论 对这些问题作分析或判断[]1. 图论是近二十年来发展十分迅速、应用比较广泛的一个新兴的数学分支,在许多领域,诸如物理学、化学、运筹学、信息论、控制论、计算机等方面甚至在生产生活中都有广泛的应用.因此受到全世界越来越广泛的重视。图论的内容十分丰富,涉及面也比较广. 研究节点和边组成的图形的数学理论和方法,为运筹学的一个分支。图论的基本元素是节点和边(也称线、弧、枝),用节点表示所研究的对象,用 1

浅谈矩阵在实际生活中的应用

浅谈矩阵在实际生活中的应用 摘要:从数学的发展来看,它来源于生活实际,在科技日新月异的今天, 数学越来越多地被应用于我们的生活,可以说数学与生活实际息息相关。我们在学习数学知识的同时,不能忘记把数学知识应用于生活。在学习线性代数的过程中,我们发现代数在生活实践中有着不可或缺的位置。在本文中,我们对代数中的矩阵在成本计算、人口流动、加密解密、计算机图形变换等方面的应用进行了探究。 关键词:线性代数矩阵实际应用 Abstract:From the development of mathematics, we can see that it comes from our life. With the development of science and technology, the math is more and more being used in our lives, it can be said that mathematics and real life are closely related. While learning math knowledge we can not forget to apply mathematical knowledge to our life. In the process of learning linear algebra, we found that algebra has an indispensable position in life practice. In this article, we explore the application of the matrix in the costing, population mobility, encryption and decryption, computer graphics transform. Keywords: linear algebra matrix practical application

(完整版)逆矩阵的几种求法与解析(很全很经典)

逆矩阵的几种求法与解析 矩阵是线性代数的主要内容,很多实际问题用矩阵的思想去解既简单又快捷.逆矩阵又是矩阵理论的很重要的内容, 逆矩阵的求法自然也就成为线性代数研究的主要内容之一.本文将给出几种求逆矩阵的方法. 1.利用定义求逆矩阵 定义: 设A 、B 都是n 阶方阵, 如果存在n 阶方阵B 使得AB= BA = E, 则称A 为可逆矩阵, 而称B 为A 的逆矩阵.下面举例说明这种方法的应用. 例1 求证: 如果方阵A 满足A k= 0, 那么EA 是可逆矩阵, 且 (E-A )1-= E + A + A 2+…+A 1-K 证明 因为E 与A 可以交换, 所以 (E- A )(E+A + A 2+…+ A 1-K )= E-A K , 因A K = 0 ,于是得 (E-A)(E+A+A 2+…+A 1-K )=E , 同理可得(E + A + A 2+…+A 1-K )(E-A)=E , 因此E-A 是可逆矩阵,且 (E-A)1-= E + A + A 2+…+A 1-K . 同理可以证明(E+ A)也可逆,且 (E+ A)1-= E -A + A 2+…+(-1)1-K A 1-K . 由此可知, 只要满足A K =0,就可以利用此题求出一类矩阵E ±A 的逆矩阵. 例2 设 A =? ? ?? ? ???? ???0000 30000020 0010,求 E-A 的逆矩阵. 分析 由于A 中有许多元素为零, 考虑A K 是否为零矩阵, 若为零矩阵, 则可以采用例2 的方法求E-A 的逆矩阵. 解 容易验证

A 2 =????????? ???0000000060000200, A 3=? ? ?? ? ? ? ?? ???00000000 00006000 , A 4=0 而 (E-A)(E+A+ A 2+ A 3)=E,所以 (E-A)1-= E+A+ A 2+ A 3= ? ? ?? ? ???????1000 31006210 6211. 2.初等变换法 求元素为具体数字的矩阵的逆矩阵,常用初等变换法.如果A 可逆,则A 可通过初等变换,化为单位矩阵I ,即存在初等矩阵S P P P ,,21Λ使 (1)s p p p Λ21A=I ,用A 1-右乘上式两端,得: (2) s p p p Λ21I= A 1- 比较(1)(2)两式,可以看到当A 通过初等变换化为单位矩阵的同时,对单位矩阵I 作同样的初等变换,就化为A 的逆矩阵A 1-. 用矩阵表示(A I )??? →?初等行变换 为(I A 1-),就是求逆矩阵的初等行变换法,它是实际应用中比较简单的一种方法.需要注意的是,在作初等变换时只允许作行初等变换.同样,只用列初等变换也可以求逆矩阵. 例1 求矩阵A 的逆矩阵.已知A=???? ? ?????521310132. 解 [A I]→??????????100521010310001132→???? ? ?????001132010310100521 → ??????????--3/16/16/1100010310100521→???? ??????-----3/16/16/110012/32/10103/46/136/1001

用邻接矩阵表示法创建有向图(数据结构)

#include #include #include #define MAX_VERTEX_NUM 20 //定义最多顶点个数 #define INFINITY32768 //定义无穷大 //描述图的类型,用枚举型类型来说明 typedef enum{DG,DN,UDG,UDN}GraphKind; //定义顶点数据类型 typedef char V ertexData; //定义邻接矩阵中元素值(即边信息)的数据类型 typedef int ArcNode; //定义图的邻接矩阵类型:一个顶点信息的一维数组,一个邻接矩阵、当前图中包含的顶点数、边数以及图类型(有向图、有向网、无向图、无向网) typedef struct { V ertexData vertex[MAX_VERTEX_NUM]; ArcNode arcs[MAX_VERTEX_NUM][MAX_VERTEX_NUM]; int vertexnum,arcnum; GraphKind kind; } AdjMatrix;//图的邻接矩阵表示类型 int LocateV ertex(AdjMatrix *G,V ertexData v) //求顶点位置函数 { int j=-1,k; for(k=0;kvertexnum;k++) { if(G->vertex[k]==v) { return k; } } return j; } int CreateDN(AdjMatrix *G) //创建一个又向网 { int i,j,k,weight; V ertexData v1,v2; printf("输入图的顶点数和弧数,以逗号分隔\n"); //输入图的顶点数和弧数 scanf("%d,%d",&G->vertexnum,&G->arcnum); for(i=0;ivertexnum;i++) //初始化邻接矩阵(主对角线元素全为零,其余元素为无穷大) {

矩阵的简单应用 (5)

1.掌握网络图、一级路矩阵、二级路矩阵的定义. 2.了解矩阵的简单应用. [基础·初探] 1.矩阵的相关知识 (1)矩阵的概念及表示方法. (2)矩阵的计算:二阶矩阵与平面列向量的乘法,两个二阶矩阵之间的乘法. (3)常见的几何变换:恒等、伸压、反射、旋转、投影及切变变换,掌握它们的矩阵表示. (4)二阶矩阵对应的几何变换均是线性变换. (5)矩阵的乘法的几何意义在于对应变换的复合. (6)矩阵的乘法满足结合律,但不满足交换律、消去律. (7)逆矩阵的概念:掌握哪些(变换对应的)矩阵是可逆的,投影变换矩阵是重要的不可逆矩阵的例子. (8)利用逆矩阵公式或者行列式法求逆矩阵;从几何变换上分析二元一次方程组的解. (9)特征值与特征向量的概念、求法及其应用. 2.网络图与路矩阵 (1)在数学中,通常把像如图2-6-1这样表示关系的图形称为网络图,其中的交点A,B,C称为结点.

图2-6-1 (2)网络图所对应的反映从一个结点直达另一个结点的交通情况的矩阵叫做一级路矩阵,而从某个结点出发,先经过一个结点,再到达另外一个结点的交通情况的矩阵称为二级路矩阵. (3)一级路矩阵与二级路矩阵的区别在于从一个结点到另一个结点是直达,还是间接到达. 右图对应的一级路矩阵M =, 二级路矩阵N =. 3.求解矩阵应用题的方法及技巧 对于应用题,我们要读懂题意,如果还没弄清题意就去做题,则很容易出错.应用题主要考查分析能力、转化能力及运算能力.因此,我们要加强这方面能力的培养与训练,在解与矩阵有关的应用题时,要学会寻找分析问题和解决问题的突破口,在解题中提高自己的综合能力. 4.种群问题的数学模型 教材P 78例6种群问题的数学模型. ???? ??a n +1b n +1=M ??????a n b n =?? ????a b c d ???? ?? a n b n ,其中{a n },{b n }表示两个相互影响的种群X ,Y 随时间段变化的数量.若起初的种群数量β=?????? a 1 b 1,则经过n 个时段后的种群数量 为??????a n +1b n +1,且??????a n +1b n +1=M n ?????? a 1 b 1 .若矩阵M 的特征值λ1,λ 2对应的特征向量分别为 α1, α2,且β=m α1+k α2,m ∈R ,k ∈R ,则???? ??a n +1b n +1=M n ??????a 1b 1=M n β=M n (m α1+k α2)=

幂等矩阵的性质及其应用

幂等矩阵的性质及其应用 0 引言 幂等矩阵是一类性质特殊的矩阵,不仅在高等代数中有着重要的应用,在其它课程中,如计量经济学、统计学课程中也有着重要应用。在代数学中,线性变换的许多问题都可以转化为幂等矩阵来解决。但是在通常的高等代数的教材中关于幂等矩阵的讨论是比较少的。因此本文对幂等矩阵的性质做出相关讨论。本文主要给出幂等矩阵特征值、特征子空间和Jordan标准型的基本性质,同时给出了一些相关的应用。 1 主要结果 首先给出幂等矩阵的定义和基本性质。 定义1:若n阶方阵A满足A2=A,则称A为幂等矩阵。 下面给出关于幂等矩阵的一些简单的性质。 定理1:幂等矩阵A的特征值只能是0或者1。 证明:设A为任意一个幂等矩阵。 由A2=A,可得 λ2=λ 其中λ为A的特征值。于是有 λ=1或0, 命题得证。 推论:可逆的幂等矩阵的特征值均为1。 证明:设A为一可逆的幂等矩阵。由A2=A可得 A2A-1=AA-1 即 A=E。 此时有 λE-E=0 即 λ=1 其中,λ为A的特征值。命题得证。 定理2:任意的幂等矩阵A都相似于对角阵,即存在可逆阵P,使得: P-1AP=E■ 00 0, 其中r=R(A)。 证明:A为任意幂等矩阵,J为其Jordan标准型,即存在可逆矩阵P,使得P-1AP=J=■, 其中Ji=■。 由此可得J 2=J。于是有,Ji 2=Ji。 此时,Ji只能为数量矩阵λ■E。 又因为A2=A,所以λ■=0或1,且r=R(A)。命题得证。 定理3:幂等矩阵的特征值为1的特征子空间为其值域,特征值为0的特征子空间为其零(核)空间。 证明:(i)A为一n阶幂等矩阵。?琢为其特征值1对应的特征向量。 则有,A?琢=?琢。由此可得?琢属于A的值域。

邻接矩阵创建有向网的实现

韩山师范学院 实验题目: 邻接矩阵创建有向网算法实现 班级:2015级软工班作者:黄俊聪 #include using namespace std; #define MaxInt 32767 //表示极大值,即∞ #define MVNum 100 //最大顶点数 #define OK 1 #define ERROR 0; typedef char VerTexType;//假设顶点的数据类型为字符型 typedefintArcType;//假设边的权值类型为整型 typedefint Status; typedefstruct { VerTexTypevexs[MVNum];//顶点表 ArcType arcs[MVNum][MVNum];//邻接矩阵 intvexnum,arcnum;//图的当前点数和边数 }AMGraph; Status LocateVex(AMGraphG,char v) {

for(i=0; i>G.vexnum>>G.arcnum;//输入总定点数,总边数 cout<<"次输入点的信息:"<>G.vexs[i]; for(int i=0;i>v1>>v2>>w;//输入一条边依附的顶点及权值 i=LocateVex(G,v1); j=LocateVex(G,v2);//确定v1和v2在G中的位置,即顶点数组的下表 G.arcs[i][j]=w;//边的权值置为w } return OK; } void PrintMatrix(AMGraph&G)//输出邻接矩阵 { inti,j; printf("邻接矩阵为:\n"); for(i=0;i

相关文档
最新文档