目录

一、定义

二、图的存储

1、数组(邻接矩阵)表示法

1.1、邻接矩阵表示法创建无向网

2、邻接表表示方法(链式)

2.1  采用邻接表表示法创建无向图

三、图的遍历

1、深度优先搜索(DFS)

2、广度优先搜索(BFS)

四、生成树

1、定义

2、小生成树(MST)

3、构造最小生成树算法

3.1 普里姆(Prim)算法

3.2 克鲁斯卡尔(Kruskal)算法

五、最短路径

1、简述

2、Dijkstra(迪杰斯特拉)算法 

3、Floyd(佛洛伊德)算法

六、有向无环图的应用

1、拓扑排序

2、关键路径

一、定义

图是一种比较常用的数据结构,有许多定义需要理解,下面一一介绍。

数据结构与算法PPT演示 数据结构与算法课件ppt_算法

                                                                           

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接表_02

 

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_03

 

数据结构与算法PPT演示 数据结构与算法课件ppt_数据结构_04

数据结构与算法PPT演示 数据结构与算法课件ppt_数据结构_05

 

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接矩阵_06

                         

数据结构与算法PPT演示 数据结构与算法课件ppt_数据结构与算法PPT演示_07

 连通图(强连通图):在无(有)向图G=(V, {E})中,若对任何两个顶点v、u都存在从v到u的路径,则称G是连通图(强连通图)。 如下图:                                                                                   

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_08

     

权与网:图中边或弧所具有的相关数称为,表明从一个顶点到另一个顶点的距离或耗费。带权的图称为。 

子图:设有两个图G=(V, {E})、G1=(V1, {E1})、若V1 

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接表_09

 V,E1 

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接表_09

 E,则称G1是G的子图。             

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_11

 

数据结构与算法PPT演示 数据结构与算法课件ppt_数据结构_12

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接矩阵_13

                                                     

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_14

  

数据结构与算法PPT演示 数据结构与算法课件ppt_数据结构与算法PPT演示_15

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接表_16

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接矩阵_17

       

图的几个重要操作:

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接矩阵_18

                                       

二、图的存储

图的逻辑结构是多对多的形式,图没有顺序存储结构,但是可以借助二维数组来表示元素间的关系。

数组表示法:邻接矩阵

链式存储结构:多重链表(邻接表、邻接多重表、十字链表)

重点学习:邻接矩阵(数组)表示法、邻接表(链式)表示法

1、数组(邻接矩阵)表示法

数据结构与算法PPT演示 数据结构与算法课件ppt_数据结构与算法PPT演示_19

                                                   

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接矩阵_20

                                               

数据结构与算法PPT演示 数据结构与算法课件ppt_数据结构与算法PPT演示_21

                                                               

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_22

                                                                             

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_23

      

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接矩阵_24

1.1、邻接矩阵表示法创建无向网

数据结构与算法PPT演示 数据结构与算法课件ppt_数据结构_25

   

数据结构与算法PPT演示 数据结构与算法课件ppt_数据结构与算法PPT演示_26

                                                       

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_27

  

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_28

邻接矩阵的优缺点:                                                                     

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接表_29

                                       

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接表_30

      

2、邻接表表示方法(链式)

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_31

                                   

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接矩阵_32

 

数据结构与算法PPT演示 数据结构与算法课件ppt_数据结构_33

                        

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接矩阵_34

                                         

数据结构与算法PPT演示 数据结构与算法课件ppt_数据结构_35

                                    

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接矩阵_36

                                                   

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_37

                                       

数据结构与算法PPT演示 数据结构与算法课件ppt_数据结构_38

  

邻接表相关操作举例:

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_39

2.1  采用邻接表表示法创建无向图

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接矩阵_40

                                           

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接矩阵_41

                                             

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接表_42

  

邻接表的特点:

数据结构与算法PPT演示 数据结构与算法课件ppt_数据结构与算法PPT演示_43

邻接矩阵与邻接表两种表示法的关系:

数据结构与算法PPT演示 数据结构与算法课件ppt_数据结构与算法PPT演示_44

                                       

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_45

       

三、图的遍历

图的遍历分为深度优先和广度优先。

1、深度优先搜索(DFS)

数据结构与算法PPT演示 数据结构与算法课件ppt_数据结构与算法PPT演示_46

  

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_47

                                                   

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_48

                                                     

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接矩阵_49

                                

DFS算法时间效率分析:

数据结构与算法PPT演示 数据结构与算法课件ppt_数据结构_50

  

2、广度优先搜索(BFS)

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接表_51

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接表_52

BFS时间效率分析:

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_53

DFS与BFS算法比较:

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_54

四、生成树

1、定义

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接矩阵_55

                                                             

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接表_56

                                     

数据结构与算法PPT演示 数据结构与算法课件ppt_数据结构_57

                                 

最小生成树的典型应用:

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_58

                    

2、小生成树(MST)

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接矩阵_59

MST性质分析:

数据结构与算法PPT演示 数据结构与算法课件ppt_数据结构_60

3、构造最小生成树算法

3.1 普里姆(Prim)算法

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接矩阵_61

3.2 克鲁斯卡尔(Kruskal)算法

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接矩阵_62

两种算法比较:

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接表_63

五、最短路径

1、简述

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_64

                                         

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接矩阵_65

 

最短路径问题分类:

数据结构与算法PPT演示 数据结构与算法课件ppt_数据结构_66

                                                 

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_67

         

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接表_68

                                                                 

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_69

   

2、Dijkstra(迪杰斯特拉)算法 

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_70

 

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接表_71

                                 

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_72

       

3、Floyd(佛洛伊德)算法

数据结构与算法PPT演示 数据结构与算法课件ppt_数据结构_73

                                                                                             

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_74

     

六、有向无环图的应用

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接表_75

 

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接矩阵_76

  

1、拓扑排序

AOV网特点:

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接表_77

数据结构与算法PPT演示 数据结构与算法课件ppt_数据结构与算法PPT演示_78

 

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接矩阵_79

    

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接矩阵_80

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_81

2、关键路径

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_82

 

数据结构与算法PPT演示 数据结构与算法课件ppt_算法_83

 

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接表_84

 

数据结构与算法PPT演示 数据结构与算法课件ppt_数据结构_85

 

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接表_86

 

数据结构与算法PPT演示 数据结构与算法课件ppt_数据结构与算法PPT演示_87

 

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接矩阵_88

 

数据结构与算法PPT演示 数据结构与算法课件ppt_邻接表_89