Open topic Bellman-Ford算法与负环

Similar documents
正文封面.PDF

馬偕醫學院 學生事務工作簡報

e bug 0 x=0 y=5/x 0 Return 4 2

1.3

56,,,,, :,, 1953,, 1953,1953,,1953,,,,,,,,, () ,30118, 34, ;,4912 %,5614 %, 1,1953, 1119, ,, , , 1111 (

团 学 要 闻 我 校 召 开 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 3 月 17 日, 我 校 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 在 行 政 办 公 楼 五 楼 会 议 室 举 行, 校 团 委 委 员 各 院 ( 系 ) 团 委 书 记 校 学 生

af9c70ccea1f1950c6732b99b2e51134_ pdf

附 件 :2015 年 度 普 通 高 等 学 校 本 科 专 业 备 案 和 审 批 结 果 教 育 部 2016 年 2 月 16 日 抄 送 : 国 家 发 展 改 革 委 财 政 部 国 家 卫 生 计 生 委 国 家 中 医 药 管 理 局 部 内 发 送 : 有 关 部 领 导, 办 公

1406.indd

上图专刊2006-3AAA.doc

衡山靈學創始人 超越時代的靈學明師 許衡山 老師 許衡山老師 出生於西元 1942 年 於 1980 年代啟發先天眼竅 自證其道 了悟真理 許 老師首先發現 人人皆可開發出第三眼能力與靈性能量 並藉由系統化的研究 將種種 生命現象與宇宙真理做深入淺出的剖析 並為生命的最終意義指出一條明路 現代文明昌

第53期内页.cdr

슬로시티번역,더빙 등 보고서(중문)_두현.hwp

untitled


?



EP.pdf

目 錄 CONTENTS 鎮 長 的 話 亞 田 水 餃 店 活 力 羅 東. 魅 力 城 鎮 芳 香 食 坊 小 丸 町 天 然 愛 玉 林 記 鮮 肉 小 湯 包 上 青 廣 東 粥 林 場 肉 川 媽 臭 臭 鍋 金 蛋 爆 漿 玉

第三节 软件测试的过程与策略

C++ 程式設計

02


使用手册.doc

不 知 肉 味 的 用 法 相 同? (A) 長 煙 一 空, 皓 月 千 里 (B) 五 臟 六 腑 裡, 像 熨 斗 熨 過, 無 一 處 不 伏 貼 (C) 兩 片 頑 鐵, 到 他 手 裡, 便 有 了 五 音 十 二 律 似 的 (D) 吾 觀 三 代 以 下, 世 衰 道 微 12. 文

净, 保 持 面 部 整 洁 这 里 要 说 一 下 的 是, 很 多 男 生 注 意 了 胡 子, 却 忘 了 鼻 毛, 而 旁 人 或 者 同 学 往 往 也 不 好 意 思 提 醒 建 议 面 试 前 一 定 要 仔 细 照 一 照 镜 子, 好 好 检 查 一 下 有 些 人 讲 话 多 了

99710b43ZW.PDF


Fun Time (1) What happens in memory? 1 i n t i ; 2 s h o r t j ; 3 double k ; 4 char c = a ; 5 i = 3; j = 2; 6 k = i j ; H.-T. Lin (NTU CSIE) Referenc

好 樂 迪 股 份 有 限 公 北 大 分 公 臺 中 市 大 里 區 中 興 路 2 段 446 之 5 號 1 至 3 及 446 之 7 號 茗 園 歌 唱 視 聽 臺 中 市 大 里 區 永 隆 里 永 隆 八 街 178 號

3. 反 映 : 4. 五 花 八 门 : 5. 慷 慨 : 6. 参 与 : 7. 慰 劳 : 8. 延 续 : 9. 珍 爱 : 10. 浪 漫 : 三. 找 出 下 列 每 组 词 中 的 近 义 词 或 同 义 词 : 节 日 节 气 节 令 时 节 习 俗 民 俗 仪 式 风 俗 文 献

59 1 CSpace 2 CSpace CSpace URL CSpace 1 CSpace URL 2 Lucene 3 ID 4 ID Web 1. 2 CSpace LireSolr 3 LireSolr 3 Web LireSolr ID


穨control.PDF


(京)新登字063号

Microsoft PowerPoint - Lecture7II.ppt

未命名-8

Fuzzy GP

VASP应用运行优化

PowerPoint Presentation

四、實務實習課程之實習工作日誌(請貼上掃描檔)


Microsoft Word - PHP7Ch01.docx


Microsoft Word 甘阳.doc

untitled

untitled

untitled

C/C++程序设计 - 字符串与格式化输入/输出

集 27. 臺 灣 貿 易 史 薛 化 元 戴 寶 村 3F 臺 灣 歷 史 的 鏡 與 窗 戴 寶 村 3/6F 樟 腦 鴉 片 與 專 賣 制 度 產 業 文 化 展 示 資 料 調 查 戴 寶 村 6F

SSA Form SSA Form Static Single Assignment Form Å ê «ùxr y fâ Ÿx ùxnº fâÿx ³ ø ± Í r ± º g 1) SSA f f v q «un q ø ñ qfâÿx f f v q ø i ²q øfq v ü Ø v i

Information for patients having a CT Scan - Vancouver Coastal Health

岁月的皈依.FIT)

Microsoft Word - Learn Objective-C.doc

Microsoft Word 轉學考簡章公告 docx

Go构建日请求千亿微服务最佳实践的副本

CC213

穨2700使用手冊.doc

Microsoft Word doc

Strings

<4D F736F F D203938ABFCA6D2BEFAA576ACE3A873A5CEB8D5A8F7A977BD5A2E646F63>

訪 談 後 的 檢 討 ~~~~~~~~~~~~~~~~p.18,19 2

(Microsoft Word - 03.\203K\203C\203h\203u\203b\203N\201i\222\206\215\221\214\352\201j\207@.doc)

1-28(长江二号)

簡報技巧

法務部廉政署新聞稿

影視後製全攻略 Premiere Pro After Effects Encore 自序 Adobe Premiere Pro After Effects Encore 2008 Adobe CS Adobe CS5 Adobe CS4 Premiere Pro After Effect

3A 吳嘉詠

穨japhkesch.PDF

2015年4月11日雅思阅读预测机经(新东方版)

2 自 序 小, 印 象 中 只 有 西 醫, 因 為 每 次 生 病 都 是 去 看 西 醫 吃 西 藥 從 大 學, 也 是 陽 明 大 學 物 理 治 療 學 系 畢 業, 就 是 一 般 人 所 說 的 復 健 物 理 治 療 師 這 個 階 段, 所 有 的 治 病 以 及 保 健 觀 念

Information for patients having a CT Scan - Vancouver Coastal Health

林教授2.PDF

Microsoft Word - 小心翼翼的二十一點N.doc

LEETCODE leetcode.com 一 个 在 线 编 程 网 站, 收 集 了 IT 公 司 的 面 试 题, 包 括 算 法, 数 据 库 和 shell 算 法 题 支 持 多 种 语 言, 包 括 C, C++, Java, Python 等 2015 年 3 月 份 加 入 了 R

中国科学技术大学学位论文模板示例文档

els0xu_zh_nf_v8.book Page Wednesday, June, 009 9:5 AM ELS-0/0C.8

穨文件1

概述

國立中山大學學位論文典藏.PDF

Fuzzy Highlight.ppt

01 ( ) 50 ( ) ( 5 ) ( ) ( ) ( )

目 录 CONTENTS 总 第 2 期 要 情 速 递 3 国 务 院 连 发 五 文 支 持 创 新 创 业 6 江 苏 省 机 关 事 业 单 位 养 老 保 险 改 革 年 内 启 动 9 全 市 人 社 系 统 上 半 年 工 作 分 析 会 召 开 本 刊 记 者 摘 自

JCR... 3 JCR... 3 ISI Web of Knowledge... 4 Cross Search... 5 Cross Search... 5 Cross Search ISI Web of Knowledge WOS... 8 Externa

一首诗要从什么地方读起——北岛的诗

<322DB57BA5C9BBF DA4BAA4E52E706466>

C/C++ - 字符输入输出和字符确认

有效的睡眠

C/C++ - 函数

B(K,J)=B(K,J)*B(K,K) do I=1,N if(i.ne.k) then do J=1,N if(j.ne.k) then B(I,J)=B(I,J)-B(I,K)*B(K,J) do I=1,N if(i.ne.k) then B(I,K)=-B(I,K)*B(K,K) do K

Microsoft Word - 第3章.doc

國立中山大學學位論文典藏

file:///E|/软件学习资料/HyperWorks/hyperworks学习捷径总结/Hypermesh总结——几何清理篇.txt

Chapter 24 DC Battery Sizing

Microsoft Word - 01特優教案.doc

PowerPoint Presentation

A046-A

01目录.FIT)

Transcription:

Open topic Bellman-Ford 2018 11 5 171860508@smail.nju.edu.cn 1/15

Contents 1. G s BF 2. BF 3. BF 2/15

BF G Bellman-Ford false 3/15

BF G Bellman-Ford false G c = v 0, v 1,..., v k (v 0 = v k ) k w(v i 1, v i ) < 0 i=1 true (u, v) E(G) v.d u.d + w(u, v). i v i.d v i 1.d + w(v i 1, v i ) 3/15

BF k k k v i.d v i 1 + w(v i 1, v i ) i=1 i=1 i=1 v 0 = v k k v i.d = k v i 1.d i=1 i=1 0 k w(v i 1, v i ) i=1 4/15

5/15

On the V(G) -th pass (u, v) v.d > u.d + w(u, v) v 5/15

On the V(G) -th pass (u, v) v.d > u.d + w(u, v) v v v.d v 5/15

v 3 s v 2 v 0 v 5 v 1 v 4 The original graph 6/15

v 3 s v 2 v 0 v 5 v 1 v 4 4 0 3 5 3 6 6 The original graph G after V(G) 1 passes 6/15

v 3 s v 2 v 0 v 5 v 1 v 4 4 0 3 5 3 6 6 v 3 s v 2 v 0 v 5 v 1 v 4 The original graph G after V(G) 1 passes G.π after V(G) 1 passes 6/15

v 2 v 0 v 3 v 1 v 1 v 2 the cycle v 0 v 3 v 0 s v 4 v 4 v 5 v 5 G.π after V(G) passes Visited nodes during the search 7/15

v 2 v 0 v 3 v 1 v 1 v 2 the cycle v 0 v 3 v 0 s v 4 v 4 v 5 v 5 G.π after V(G) passes Visited nodes during the search vis 7/15

BF Algorithm 1 Bellman-Ford with Negative Cycle Output 1: function Bellman-Ford-Mod(G, s, w) 2: Initialize-Single-Source(G, s) 3: for i = 1 to V(G) 1 do 4: for edge (u, v) E(G) do 5: Relax(u, v, w) 6: end for 7: end for 8: for edge (u, v) E(G) do One more pass 9: if v.d > u.d + w(u, v) then 8/15

BF Algorithm 2 Bellman-Ford with Negative Cycle Output 1: function Bellman-Ford-Mod(G, s, w) 2: Initialize-Single-Source(G, s) 3: for i = 1 to V(G) 1 do 4: for edge (u, v) E(G) do 5: Relax(u, v, w) 6: end for 7: end for 8: for edge (u, v) E(G) do One more pass 9: if v.d > u.d + w(u, v) then 10: v.π = u What happens if a V -cycle? 11: return Negative-Cycle-Aux(v) Only one cycle 12: end if 13: end for 14: return an empty vector 15: end function 8/15

BF Algorithm 3 Output the negative cycle found with node v 1: function Negative-Cycle-Aux(v) 2: let c be a vector to hold the cycle 3: let vis be an empty array of size V(G) 4: create a pointer p initially pointed at v 9/15

BF Algorithm 4 Output the negative cycle found with node v 1: function Negative-Cycle-Aux(v) 2: let c be a vector to hold the cycle 3: let vis be an empty array of size V(G) 4: create a pointer p initially pointed at v 5: while vis[p] == false do break at second visit 6: vis[p] == true mark the pointed as visited 7: p = p.π visit p s parent 8: end while 9/15

BF Algorithm 5 Output the negative cycle found with node v 1: function Negative-Cycle-Aux(v) 2: let c be a vector to hold the cycle 3: let vis be an empty array of size V(G) 4: create a pointer p initially pointed at v 5: while vis[p] == false do break at second visit 6: vis[p] == true mark the pointed as visited 7: p = p.π visit p s parent 8: end while 9: let t = p and p = p.π 10: while p t do 11: push p into c 12: end while 13: push t into c and return c 14: end function 9/15

BF incycle 10/15

BF incycle G (u, v) E(G), v.d > u.d + w(u, v) 10/15

BF incycle G (u, v) E(G), v.d > u.d + w(u, v) (a). G.π 10/15

BF incycle G (u, v) E(G), v.d > u.d + w(u, v) (a). G.π (b). G.π v π 10/15

1 Relax v { v.d < 0, v == s, v.π Nil v.d < +, o.w. 11/15

1 Relax v { v.d < 0, v == s, v.π Nil v.d < +, o.w. 2 G.π s.d = 0 G.π s 11/15

1 Relax v { v.d < 0, v == s, v.π Nil v.d < +, o.w. 2 G.π s.d = 0 G.π s G.π v.d < + G.π s.d = 0 s Relax s s 11/15

(a) G.π c = v 0, v 1,..., v k (v 0 = v k ) G.π (v k 1, v k ) 12/15

(a) G.π c = v 0, v 1,..., v k (v 0 = v k ) G.π (v k 1, v k ) v 0 = v k > v k 1 + w(v k 1, v k ) = (v k 2 + w(v k 2, v k 1 )) + w(v k 1, v k ) = k = v 0 + w(v i 1, v i ) > v 0 i=1 12/15

(b) 1 v.π s s.d = 0 13/15

(b) 1 v.π s s.d = 0 G.π s v G s v Path-relaxation property v.d = δ(s, v) (u, v) E(G), v.d > u.d + w(u, v) 13/15

(b) 1 v.π s s.d = 0 G.π s v G s v Path-relaxation property v.d = δ(s, v) (u, v) E(G), v.d > u.d + w(u, v) V(G) V(G) G.π s 13/15

Bellman-Ford O( V E ) 14/15

Bellman-Ford O( V E ) O( V ) + O( V ) = O( V ) 14/15

Bellman-Ford O( V E ) O( V ) + O( V ) = O( V ) O( V E ) 14/15

G 15/15

G s t v (s, v) (v, t) s Bellman-Ford 15/15

G v 2 s v 2 s v 3? v 1 s 0 v 3 v 1 v 0 t v 0 Unreachable Reachable s t v (s, v) (v, t) s Bellman-Ford 15/15

G v 2 s v 2 s v 3? v 1 s 0 v 3 v 1 v 0 t v 0 Unreachable Reachable s t v (s, v) (v, t) s Bellman-Ford O(2 V ) + O( V ( E + V )) = O( V E + V 2 ) 15/15

Thanks Q & A 15/15