資料結構 第7章 圖形結構.

Slides:



Advertisements
Similar presentations
软饮料概述 人文艺术系 石惠舟. 什么是饮料? 饮料概述 饮料是指以水为基本原料,由 不同的配方和制造工艺生产出 来,供人们直接饮用的液体食 品。 饮料 饮料除提供水分外,由于在不 同品种的饮料中含有不等量的 糖、酸、乳以及各种氨基酸、 维生素、无机盐等营养成分, 因此有一定的营养。
Advertisements

第五单元 酒水知识与酒吧服务 主题三 蒸 馏 酒 —— 中国蒸馏酒. 蒸馏酒是把经过发酵的酿酒原料,经过一次或多次的蒸馏过 程提取的高酒度酒液。
不知者無罪嗎 ? 【本報台北訊】國內知名大學胡姓研究 生進口豬籠草在網路上販售,涉嫌違反 植物防疫檢疫法,胡姓研究生表示不知 道豬籠草是違禁品並當場認錯道歉 台北地檢署檢察官念他初犯,昨 天處分緩起訴,但命他繳交六萬 元緩起訴處分金作公益。 豬籠草有潛移性線蟲寄生,一旦植物感 染後,輕則枯萎凋零,重則危害農業經.
資料結構與演算法 第6章 圖形 徐熊健.
鬼太郎 身為幽靈族後裔一員的鬼太郎,他出生的時候,父母便雙亡,不過他的爸爸化身為眼珠,陪伴著他。而鬼太郎與他的同伴貓女、臭鼠人等,為了維持妖怪與人類間的和平,他們將一一消滅邪惡的妖怪,守護這世界的和平。
Network Optimization: Models & Algorithms
Chapter 12 圖形結構 12.1 圖形的一些專有名詞 12.2 圖形資料結構表示法 12.3 圖形追蹤 12.4 擴展樹
使用C/C++語言 楊正宏 編著 全華科技圖書股份有限公司 印行.
恩典更新 羅15:1-13.
第7章 图论基础与应用 PART A 《可视化计算》.
成员名单 陈丽 陈敏 杨娇 高丽莉 李亚金 吴沅娟 任津沙 张舒蓉.
第九章 圖形結構.
GRAPH THEORY 圖論 第二組 晏彩霞 陳弘益 王文斕.
第8章 圖形結構(Graphs) 8-1 圖形的基本觀念 8-2 圖形的表示法 8-3 圖形的走訪 8-4 擴張樹
Chap5 Graph.
7.5 擴張樹 (Spanning Tree) 一個無向相連圖 G 的子圖 G’ 如果可用最少的邊來連接G 的
資料結構 第3章 鏈結串列.
Graph Theory Part II Applications in daily life
Chapter 4 Spanning Trees
Chap5 Graph.
資料結構設計與C++程式應用 Fundamentals of Data Structures and Their Applications Using C++ 第3章 佇列 資料結構設計與C++程式應用.
第8章 圖形結構(Graphs) 8-1 圖形的基本觀念 8-2 圖形的表示法 8-3 圖形的走訪 8-4 擴張樹
Activity Networks AOV網路 AOE網路.
第八章 图 图的基本概念 图的存储结构 图的遍历与连通性 最小生成树 最短路径 活动网络.
复习.
The Greedy Method.
Graph Theory Graph theory is the study of the properties of graph structures. It provides us with a language with which to talk about graphs.
(Circular Linked Lists)
Chapter 7 圖形與網路 資料結構導論 - C語言實作.
Chapter 7 圖形與網路 資料結構導論 - C語言實作.
第16讲 图的矩阵表示, 赋权图与最短路径 主要内容: 1.图的矩阵表示. 2.赋权图与最短路径..
Chap3 Linked List 鏈結串列.
第 九 章 圖形結構 課程名稱:資料結構 授課老師:________ 2019/2/22.
Ch 3 Dynamic Programming (動態規劃).
运筹学 图与网络分析 1.
第9章 基本图算法 本章内容将包含基本的图形表示法,以及先深搜寻,先广搜寻,拓朴排序,Strongly Connected Components。
講師:郭育倫 第10章 加權圖 講師:郭育倫
数据结构概论 第7章 图 董黎刚 浙江工商大学信电学院 2019年4月8日.
最短路徑 The Shortest Path.
Definition of Trace Function
§1 图与网络的基本概念 §2 树图与最小生成树 §3 最短路问题 §4 最大流问题 §5 最小费用最大流问题
本章結構 網路簡介 最短路徑問題 最小展開樹問題 最大流量問題 10-1.
101北一女中 資訊選手培訓營 深度優先搜尋(DFS)的進階應用 Nan.
圖論的介紹 第二組 徐榮德 鄭又齊 陳俊嘉.
圓的定義 在平面上,與一定點等距的所有點所形成的圖形稱為圓。定點稱為圓心,圓心至圓上任意一點的距離稱為半徑,「圓」指的是曲線部分的圖形,故圓心並不在圓上.
蕭志明 老師 Algorithm(演算法) Ext:6779
蕭志明 老師 Algorithm(演算法) /FB:
Teacher: 郭育倫 Mail: 演算法 Teacher: 郭育倫 Mail:
单元17 钢 结 构 学习目标 (1)了解钢结构的特点。 (2)了解钢结构的发展现状。 (3)掌握钢结构的链接方式。
103資訊學科培訓 圖論 - BFS & DFS & 應用 講者:林庭宇.
講師:郭育倫 第10章 加權圖 講師:郭育倫
图(二).
MicroSim pspice.
鄧姚文 資料結構 第八章:圖(Graph) 鄧姚文
體積.
网络模型 Network Modeling Operations Research 运 筹 学
樂理教學                 茄苳國小蔡逸凡老師.
12797: Letters ★★★☆☆ 題組:Problem Set Archive with Online Judge
图练习.
汽车电器与控制设备 第0章 绪论.
介入及追蹤紀錄表 編號: 姓/稱謂: 初次103年 月 日 追蹤 月 日 問題型態 (可複選) □ 1. 覺得西藥都很傷胃
All Sources Shortest Path The Floyd-Warshall Algorithm
Advanced Competitive Programming
第六章 图.
圖形結構 Graph Structure chapter 9 德明科技大學資訊科技系.
第7章 图.
11621 : Small Factors ★★☆☆☆ 題組:Problem Set Archive with Online Judge
圖 論 簡 介.
南昌大学研究生数学建模竞赛教学案例(库)
JAVA 程式設計與資料結構 第二十一章 Graph.
Presentation transcript:

資料結構 第7章 圖形結構

7-1 認識圖形 Koenigsberg Bridge問題

7-1-1 圖形的定義 圖形G是由V(G) 和E(G) 所組成,其中V(G) 是一個有限且非空的集合,代表頂點,E(G) 是一個有限的集合,代表邊 ,寫成G = (V, E)。

7-1-2 圖形的相關名詞 相關名詞: 相鄰 分支度 長度 簡單路徑 連通 、強連通 、弱連通 循環 加權圖形 7-1-2 圖形的相關名詞 相關名詞: 相鄰 分支度 長度 簡單路徑 連通 、強連通 、弱連通 循環 加權圖形 自身迴圈 、多重圖形 、簡單圖形 子圖形 連通單元、強連通單元 完整圖形

7-2 圖形的表示方式 7-2-1 相鄰矩陣 範例7.1:以相鄰矩陣存放無向圖形G1。

範例7.2:以相鄰矩陣存放有向圖形G2。

7-2-2 相鄰串列 範例7.3:以相鄰串列存放無向圖形G1。

範例7.4:以相鄰串列存放有向圖形G2。

7-2-3 加權圖形的表示方式 範例7.5:以相鄰矩陣存放加權圖形G6。

範例7.6:以相鄰串列存放加權圖形G6。

7-3 圖形的基本運算 7-3-1 深度優先搜尋 (DFS)

範例7.7:[DFS] 假設下列圖形的起始頂點為A,試寫出其深度優先搜尋結果。

解答:

7-3-2 廣度優先搜尋 (BFS)

範例7.9:[BFS] 假設下列圖形的起始頂點為A,試寫出其廣度優先搜尋結果。

解答:

7-3-3 連通單元 只要呼叫dfs(0) 或bfs(0) 函數,令它從第一個頂點開始走訪,一旦在走訪完畢後還有其它尚未拜訪過的頂點,就表示該圖形不是一個連通圖形 ,下圖即為一例。 show_connected() { int v; for(v = 0; v < n; v++) if (visited[v] == FALSE){ dfs(v); printf("\n"); }

7-3-4 擴張樹 圖形的擴張樹 (spanning tree) 指的是以圖形內最少的邊數連接所有頂點所形成的樹,而樹 (tree) 則是連通且沒有循環的圖形 。

圖形G14幾種可能的擴張樹 :

G15的DFS樹 G15的BFS樹

7-4 最小擴張樹 Kruskal演算法

Prim演算法

Sollin演算法

7-5 最短路徑 最短路徑 (shortest path) 又分成「某個頂點到其它頂點的最短路徑」和「任意兩個頂點的最短距離」兩種情況。 7-5 最短路徑 最短路徑 (shortest path) 又分成「某個頂點到其它頂點的最短路徑」和「任意兩個頂點的最短距離」兩種情況。 以加權圖形表示城市之間的交通路線

7-5-1 某個頂點到其它頂點的最短路徑 起點 終點 最短距離 最短路徑 V0 V1 7 V0→V1 V2 3 V0→V2 V3 12 7-5-1 某個頂點到其它頂點的最短路徑 起點 終點 最短距離 最短路徑 V0 V1 7 V0→V1 V2 3 V0→V2 V3 12 V0→V2→V3 V4 20 V0→V2→V4 V5 13 V0→V2→V5 V6 14 V0→V2→V5→V6 V7 24 V0→V2→V5→V7

使用Dijkstra演算法求取某個頂點到其它頂點的最短路徑:每次都要從尚未選擇的頂點中選擇距離最短者Vx ,然後檢查有沒有其它尚未選擇的頂點Vi因為行經Vx而使距離變短,如此重複V - 1次,直到找出第V - 1個頂點的最短路徑,整個演算法才宣告結束。

7-5-2 任意兩個頂點的最短距離 方法一:分別以加權圖形的每個頂點做為起始頂點執行Dijkstra演算法。 7-5-2 任意兩個頂點的最短距離 方法一:分別以加權圖形的每個頂點做為起始頂點執行Dijkstra演算法。 方法二:使用Floyd演算法,其步驟如下 : 使用admatrix[V][V] 陣列存放加權圖形的相鄰矩陣。 定義Ak[i][j] 為Vi到Vj的最短距離,而且中間只能經過 索引小於等於k的頂點。 定義A0[i][j] 為admatrix[i][j] 。 根據下式依序求取A0、A1、…、AV,AV即為最後的結果。 Ak[i][j] = min{ Ak-1[i][j], Ak-1[i][k] + Ak-1[k][j]}, k ≥ 1且A0[i][j] = 邊 (Vi, Vj) 的距離

範例7.18:[Floyd演算法] 針對加權圖形G17找出任意兩個頂點的最短距離。

解答: 1. 3. 2. 4.

7-6 拓樸排序 頂點工作網路 (AOV網路,activity on vertex network) 7-6 拓樸排序 頂點工作網路 (AOV網路,activity on vertex network) 前行者 (predecessor)、後繼者 (successor) 立即前行者 (immediate predecessor) 、立即後繼者 (immediate successor) 拓樸排序 (topology sort),例如V0→V1→V2→V3→V4→V5→V6→V7和V0→V1→V2→V3→V4→ V6→V5→V7

範例7.20:[拓樸排序] 針對有向圖形G18找出其拓樸排序。 1. 2.

3. 4. 5. 6.

7. 8. 9.輸出V7,所有頂點均輸出完畢,得到拓樸排序為V0→V1→V2→V3→V4→V5→V6→V7。