SlideShare uma empresa Scribd logo
1 de 14
Lecture   15:   The   Floyd-Warshall Algorithm CLRS   section   25.2 Outline   of   this   Lecture Recalling   the   all-pairs   shortest   path   problem. Recalling   the   previous   two   solutions. The   Floyd-Warshall   Algorithm. 1
The   All-Pairs   Shortest   Paths   Problem Given   a   weighted   digraph with   a   weight function ,   where is   the   set   of   real   num- bers,   determine   the   length   of   the   shortest   path   (i.e., distance )   between   all   pairs   of   vertices   in .   Here   we assume   that   there   are   no   cycle   with   zero   or   negative cost. a b c d 20 12 5 17 8 − 20 5 10 4 4 4 a b c d e without   negative   cost   cycle 6   e   3 3 4 with   negative   cost   cycle 2
Solutions   Covered   in   the   Previous   Lecture Solution   1:   Assume   no   negative   edges . Run   Dijkstra’s   algorithm, times,   once   with   each vertex   as   source. with   more   sophisticateddata structures. Solution   2:   Assume   no   negative   cycles . Dynamic   programming   solution,   based   on   a   nat- ural   decomposition   of   the   problem. . using   “   repeated   squaring”. This   lecture:   Assume   no   negative   cycles . develop   another   dynamic   programming   algorithm,   the Floyd-Warshallalgorithm,   with   time   complexity . Also   illustrates   that   there   can   be   more   than   one   way of   developing   a   dynamic   programming   algorithm. 3
Solution   3:   the   Input   and   Output   Format As   in   the   previous   dynamic   programming   algorithm, we   assume   that   the   graph   is   represented   by   an matrix   with   the   weights   of   the   edges: if if if , . Output   Format:   an and and distance where is   the   distance   from   vertex   to   . 4
Step   1:   The   Floyd-Warshall   Decomposition Definition:   The   vertices intermediate   vertices   of   the   path are   called   the . Let be   the   length   of   the   shortest   path   from to   such   that   all   intermediate   vertices   on   the   path ( if   any )   are   in   set is   set   to   be . ,   i.e.,   no   intermediate   vertex. Let be   the matrix . Claim: is   the   distance   from   to   .   So   our   aim is   to   compute . Subproblems:   compute for 5
Step   2:   Structure   of   shortest   paths Observation   1: A   shortest   path   does   not   contain   the   same   vertex   twice. Proof:   A   path   containing   the   same   vertex   twice   con- tains   a   cycle.   Removing   cycle   gives   a   shorter   path. Observation   2:   For   a   shortest   path   from to such that   any   intermediate   vertices   on   the   path   are   chosen from   the   set ,   there   are   two   possibilities: 1. is   not   a   vertex   on   the   path, The   shortest   such   path   has   length . 2. is   a   vertex   on   the   path. The   shortest   such   path   has   length . 6
Step   2:   Structure   of   shortest   paths Consider   a   shortest   path   from to containing   the to and   a vertex   .   It   consists   of   a   subpath   from subpath   from to   . Each   subpath   can   only   contain   intermediate   vertices in ,   and   must   be   as   short   as   possible, and . namely   they   have   lengths Hence   the   path   has   length . Combining   the   two   cases   we   get 7
Step   3:   the   Bottom-up   Computation Bottom: ,   the   weight   matrix. using Compute for from . 8
The   Floyd-Warshall   Algorithm:   Version   1 Floyd-Warshall( ) to do initialize for for to do ; ; for to do dynamic   programming to do for for to do if ; ; else ; return ; 9
Comments   on   the   Floyd-Warshall   Algorithm The   algorithm’s   running   time   is   clearly . The   predecessor   pointer to   extract   the   final   path   (see   later   ). Problem:   the   algorithm   uses It   is   possible   to   reduce   this   down   to can   be   used space. space by   keeping   only   one   matrix   instead   of   . Algorithm   is   on   next   page.   Convince   yourself   that it   works. 10
The   Floyd-Warshall   Algorithm:   Version   2 Floyd-Warshall( ) to do initialize for for to do ; ; for to do dynamic   programming to do for for to do if ; ; return ; 11
Extracting   the   Shortest   Paths The   predecessor   pointers can   be   used   to extract   the   final   path.   The   idea   is   as   follows. Whenever   we   discover   that   the   shortest   path   from to passes   through   an   intermediate   vertex   ,   we   set . If   the   shortest   path   does   not   pass   through   any   inter- mediate   vertex,   then . . To   find   the   shortest   path   from   to   ,   we   consult If   it   is   nil,   then   the   shortest   path   is   just   the   edge . Otherwise,   we   recursively   compute   the   shortest   path from   to and   the   shortest   path   from to   . 12
The   Algorithm   for   Extracting   the   Shortest   Paths Path( ) if   ( ) single   edge output else Path( Path( ; compute   the   two   parts   of   the   path ); ); 13
Example   of   Extracting   the   Shortest   Paths Find   the   shortest   path   from   vertex   2   to   vertex   3. Path Path Path Path Path Path Path (2,5) (5,4) (4,6) (6,3) 14

Mais conteúdo relacionado

Mais procurados

Bellman ford Algorithm
Bellman ford AlgorithmBellman ford Algorithm
Bellman ford Algorithm
taimurkhan803
 
All pairs shortest path algorithm
All pairs shortest path algorithmAll pairs shortest path algorithm
All pairs shortest path algorithm
Srikrishnan Suresh
 

Mais procurados (20)

Dijkstra's Algorithm
Dijkstra's Algorithm Dijkstra's Algorithm
Dijkstra's Algorithm
 
DAA-Floyd Warshall Algorithm.pptx
DAA-Floyd Warshall Algorithm.pptxDAA-Floyd Warshall Algorithm.pptx
DAA-Floyd Warshall Algorithm.pptx
 
PRIM’S AND KRUSKAL’S ALGORITHM
PRIM’S AND KRUSKAL’S  ALGORITHMPRIM’S AND KRUSKAL’S  ALGORITHM
PRIM’S AND KRUSKAL’S ALGORITHM
 
Depth First Search ( DFS )
Depth First Search ( DFS )Depth First Search ( DFS )
Depth First Search ( DFS )
 
Kruskal's algorithm
Kruskal's algorithmKruskal's algorithm
Kruskal's algorithm
 
Prims and kruskal algorithms
Prims and kruskal algorithmsPrims and kruskal algorithms
Prims and kruskal algorithms
 
Bellman ford Algorithm
Bellman ford AlgorithmBellman ford Algorithm
Bellman ford Algorithm
 
Bellman ford algorithm
Bellman ford algorithmBellman ford algorithm
Bellman ford algorithm
 
Shortest Path in Graph
Shortest Path in GraphShortest Path in Graph
Shortest Path in Graph
 
Dijkstra algorithm a dynammic programming approach
Dijkstra algorithm   a dynammic programming approachDijkstra algorithm   a dynammic programming approach
Dijkstra algorithm a dynammic programming approach
 
Shortest path algorithm
Shortest path algorithmShortest path algorithm
Shortest path algorithm
 
Floyd Warshall algorithm easy way to compute - Malinga
Floyd Warshall algorithm easy way to compute - MalingaFloyd Warshall algorithm easy way to compute - Malinga
Floyd Warshall algorithm easy way to compute - Malinga
 
Ford Fulkerson Algorithm
Ford Fulkerson AlgorithmFord Fulkerson Algorithm
Ford Fulkerson Algorithm
 
All pairs shortest path algorithm
All pairs shortest path algorithmAll pairs shortest path algorithm
All pairs shortest path algorithm
 
Graph traversal-BFS & DFS
Graph traversal-BFS & DFSGraph traversal-BFS & DFS
Graph traversal-BFS & DFS
 
Divide and conquer - Quick sort
Divide and conquer - Quick sortDivide and conquer - Quick sort
Divide and conquer - Quick sort
 
Floyd warshall-algorithm
Floyd warshall-algorithmFloyd warshall-algorithm
Floyd warshall-algorithm
 
Dijkstra's algorithm presentation
Dijkstra's algorithm presentationDijkstra's algorithm presentation
Dijkstra's algorithm presentation
 
Unit 3 daa
Unit 3 daaUnit 3 daa
Unit 3 daa
 
Find Transitive Closure Using Floyd-Warshall Algorithm
Find Transitive Closure Using Floyd-Warshall AlgorithmFind Transitive Closure Using Floyd-Warshall Algorithm
Find Transitive Closure Using Floyd-Warshall Algorithm
 

Semelhante a The Floyd–Warshall algorithm

shortestpathalgorithm-180109112405 (1).pdf
shortestpathalgorithm-180109112405 (1).pdfshortestpathalgorithm-180109112405 (1).pdf
shortestpathalgorithm-180109112405 (1).pdf
zefergaming
 
APznzaZLM_MVouyxM4cxHPJR5BC-TAxTWqhQJ2EywQQuXStxJTDoGkHdsKEQGd4Vo7BS3Q1npCOMV...
APznzaZLM_MVouyxM4cxHPJR5BC-TAxTWqhQJ2EywQQuXStxJTDoGkHdsKEQGd4Vo7BS3Q1npCOMV...APznzaZLM_MVouyxM4cxHPJR5BC-TAxTWqhQJ2EywQQuXStxJTDoGkHdsKEQGd4Vo7BS3Q1npCOMV...
APznzaZLM_MVouyxM4cxHPJR5BC-TAxTWqhQJ2EywQQuXStxJTDoGkHdsKEQGd4Vo7BS3Q1npCOMV...
KUSHDHIRRA2111026030
 
My presentation all shortestpath
My presentation all shortestpathMy presentation all shortestpath
My presentation all shortestpath
Carlostheran
 
Shortest path by using suitable algorithm.pdf
Shortest path by using suitable algorithm.pdfShortest path by using suitable algorithm.pdf
Shortest path by using suitable algorithm.pdf
zefergaming
 
Comparative Report Ed098
Comparative Report Ed098Comparative Report Ed098
Comparative Report Ed098
mikebrowl
 
01-05-2023, SOL_DU_MBAFT_6202_Dijkstra’s Algorithm Dated 1st May 23.pdf
01-05-2023, SOL_DU_MBAFT_6202_Dijkstra’s Algorithm Dated 1st May 23.pdf01-05-2023, SOL_DU_MBAFT_6202_Dijkstra’s Algorithm Dated 1st May 23.pdf
01-05-2023, SOL_DU_MBAFT_6202_Dijkstra’s Algorithm Dated 1st May 23.pdf
DKTaxation
 
CPSC125 ch6 sec3
CPSC125 ch6 sec3CPSC125 ch6 sec3
CPSC125 ch6 sec3
David Wood
 

Semelhante a The Floyd–Warshall algorithm (20)

(148065320) dijistra algo
(148065320) dijistra algo(148065320) dijistra algo
(148065320) dijistra algo
 
Shortest Path Algorithm
Shortest Path AlgorithmShortest Path Algorithm
Shortest Path Algorithm
 
shortestpathalgorithm-180109112405 (1).pdf
shortestpathalgorithm-180109112405 (1).pdfshortestpathalgorithm-180109112405 (1).pdf
shortestpathalgorithm-180109112405 (1).pdf
 
DAA_Presentation - Copy.pptx
DAA_Presentation - Copy.pptxDAA_Presentation - Copy.pptx
DAA_Presentation - Copy.pptx
 
A study on_contrast_and_comparison_between_bellman-ford_algorithm_and_dijkstr...
A study on_contrast_and_comparison_between_bellman-ford_algorithm_and_dijkstr...A study on_contrast_and_comparison_between_bellman-ford_algorithm_and_dijkstr...
A study on_contrast_and_comparison_between_bellman-ford_algorithm_and_dijkstr...
 
Single sourceshortestpath by emad
Single sourceshortestpath by emadSingle sourceshortestpath by emad
Single sourceshortestpath by emad
 
Algo
Algo Algo
Algo
 
Data structure and algorithm
Data structure and algorithmData structure and algorithm
Data structure and algorithm
 
Graph 3
Graph 3Graph 3
Graph 3
 
APznzaZLM_MVouyxM4cxHPJR5BC-TAxTWqhQJ2EywQQuXStxJTDoGkHdsKEQGd4Vo7BS3Q1npCOMV...
APznzaZLM_MVouyxM4cxHPJR5BC-TAxTWqhQJ2EywQQuXStxJTDoGkHdsKEQGd4Vo7BS3Q1npCOMV...APznzaZLM_MVouyxM4cxHPJR5BC-TAxTWqhQJ2EywQQuXStxJTDoGkHdsKEQGd4Vo7BS3Q1npCOMV...
APznzaZLM_MVouyxM4cxHPJR5BC-TAxTWqhQJ2EywQQuXStxJTDoGkHdsKEQGd4Vo7BS3Q1npCOMV...
 
My presentation all shortestpath
My presentation all shortestpathMy presentation all shortestpath
My presentation all shortestpath
 
Shortest path by using suitable algorithm.pdf
Shortest path by using suitable algorithm.pdfShortest path by using suitable algorithm.pdf
Shortest path by using suitable algorithm.pdf
 
Spsp fw
Spsp fwSpsp fw
Spsp fw
 
E017512630
E017512630E017512630
E017512630
 
Single source stortest path bellman ford and dijkstra
Single source stortest path bellman ford and dijkstraSingle source stortest path bellman ford and dijkstra
Single source stortest path bellman ford and dijkstra
 
21 All Pairs Shortest Path
21 All Pairs Shortest Path21 All Pairs Shortest Path
21 All Pairs Shortest Path
 
Comparative Report Ed098
Comparative Report Ed098Comparative Report Ed098
Comparative Report Ed098
 
01-05-2023, SOL_DU_MBAFT_6202_Dijkstra’s Algorithm Dated 1st May 23.pdf
01-05-2023, SOL_DU_MBAFT_6202_Dijkstra’s Algorithm Dated 1st May 23.pdf01-05-2023, SOL_DU_MBAFT_6202_Dijkstra’s Algorithm Dated 1st May 23.pdf
01-05-2023, SOL_DU_MBAFT_6202_Dijkstra’s Algorithm Dated 1st May 23.pdf
 
CPSC125 ch6 sec3
CPSC125 ch6 sec3CPSC125 ch6 sec3
CPSC125 ch6 sec3
 
Cpsc125 ch6sec3
Cpsc125 ch6sec3Cpsc125 ch6sec3
Cpsc125 ch6sec3
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Último (20)

FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 

The Floyd–Warshall algorithm

  • 1. Lecture 15: The Floyd-Warshall Algorithm CLRS section 25.2 Outline of this Lecture Recalling the all-pairs shortest path problem. Recalling the previous two solutions. The Floyd-Warshall Algorithm. 1
  • 2. The All-Pairs Shortest Paths Problem Given a weighted digraph with a weight function , where is the set of real num- bers, determine the length of the shortest path (i.e., distance ) between all pairs of vertices in . Here we assume that there are no cycle with zero or negative cost. a b c d 20 12 5 17 8 − 20 5 10 4 4 4 a b c d e without negative cost cycle 6 e 3 3 4 with negative cost cycle 2
  • 3. Solutions Covered in the Previous Lecture Solution 1: Assume no negative edges . Run Dijkstra’s algorithm, times, once with each vertex as source. with more sophisticateddata structures. Solution 2: Assume no negative cycles . Dynamic programming solution, based on a nat- ural decomposition of the problem. . using “ repeated squaring”. This lecture: Assume no negative cycles . develop another dynamic programming algorithm, the Floyd-Warshallalgorithm, with time complexity . Also illustrates that there can be more than one way of developing a dynamic programming algorithm. 3
  • 4. Solution 3: the Input and Output Format As in the previous dynamic programming algorithm, we assume that the graph is represented by an matrix with the weights of the edges: if if if , . Output Format: an and and distance where is the distance from vertex to . 4
  • 5. Step 1: The Floyd-Warshall Decomposition Definition: The vertices intermediate vertices of the path are called the . Let be the length of the shortest path from to such that all intermediate vertices on the path ( if any ) are in set is set to be . , i.e., no intermediate vertex. Let be the matrix . Claim: is the distance from to . So our aim is to compute . Subproblems: compute for 5
  • 6. Step 2: Structure of shortest paths Observation 1: A shortest path does not contain the same vertex twice. Proof: A path containing the same vertex twice con- tains a cycle. Removing cycle gives a shorter path. Observation 2: For a shortest path from to such that any intermediate vertices on the path are chosen from the set , there are two possibilities: 1. is not a vertex on the path, The shortest such path has length . 2. is a vertex on the path. The shortest such path has length . 6
  • 7. Step 2: Structure of shortest paths Consider a shortest path from to containing the to and a vertex . It consists of a subpath from subpath from to . Each subpath can only contain intermediate vertices in , and must be as short as possible, and . namely they have lengths Hence the path has length . Combining the two cases we get 7
  • 8. Step 3: the Bottom-up Computation Bottom: , the weight matrix. using Compute for from . 8
  • 9. The Floyd-Warshall Algorithm: Version 1 Floyd-Warshall( ) to do initialize for for to do ; ; for to do dynamic programming to do for for to do if ; ; else ; return ; 9
  • 10. Comments on the Floyd-Warshall Algorithm The algorithm’s running time is clearly . The predecessor pointer to extract the final path (see later ). Problem: the algorithm uses It is possible to reduce this down to can be used space. space by keeping only one matrix instead of . Algorithm is on next page. Convince yourself that it works. 10
  • 11. The Floyd-Warshall Algorithm: Version 2 Floyd-Warshall( ) to do initialize for for to do ; ; for to do dynamic programming to do for for to do if ; ; return ; 11
  • 12. Extracting the Shortest Paths The predecessor pointers can be used to extract the final path. The idea is as follows. Whenever we discover that the shortest path from to passes through an intermediate vertex , we set . If the shortest path does not pass through any inter- mediate vertex, then . . To find the shortest path from to , we consult If it is nil, then the shortest path is just the edge . Otherwise, we recursively compute the shortest path from to and the shortest path from to . 12
  • 13. The Algorithm for Extracting the Shortest Paths Path( ) if ( ) single edge output else Path( Path( ; compute the two parts of the path ); ); 13
  • 14. Example of Extracting the Shortest Paths Find the shortest path from vertex 2 to vertex 3. Path Path Path Path Path Path Path (2,5) (5,4) (4,6) (6,3) 14