Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter 9: Graphs Basic Concepts

Similar presentations


Presentation on theme: "Chapter 9: Graphs Basic Concepts"— Presentation transcript:

1 Chapter 9: Graphs Basic Concepts
Mark Allen Weiss: Data Structures and Algorithm Analysis in Java Chapter 9: Graphs Basic Concepts Lydia Sinapova, Simpson College

2 Graphs – Basic Concepts
Basic definitions: vertices and edges More definitions: paths, simple paths, cycles, loops Connected and disconnected graphs Spanning trees Complete graphs Weighted graphs and networks Graph representation Adjacency matrix Adjacency lists

3 Basic Graph Definitions
A graph is a mathematical object that is used to model different situations – objects and processes: Linked list Tree (partial instance of graph) Flowchart of a program City map Electric circuits Course curriculum

4 Vertices and Edges Definition: A graph is a collection (nonempty set) of vertices and edges Vertices: can have names and properties Edges: connect two vertices, can be labeled, can be directed Adjacent vertices: there is an edge between them

5 Example Vertices: A,B,C,D Edges: AB, AC, BC, CD A C B D A B C D Graph1
Two ways to draw the same graph

6 Directed and undirected graphs
B C D These are two different graphs

7 More definitions : Path
A list of vertices in which successive vertices are connected by edges A B C B A C D A B C A B C A B C D B A B A C A B C D

8 More definitions : Simple Path
No vertex is repeated. A B C D D C A D C B A B A B C A B C D

9 More definitions : Cycle
Simple path with distinct edges, except that the first vertex is equal to the last A B C D A B C A B A C B C B A C A graph without cycles is called acyclic graph.

10 More definitions : Loop
An edge that connects the vertex with itself A B C D

11 Connected and Disconnected graphs
Connected graph: There is a path between each two vertices Disconnected graph : There are at least two vertices not connected by a path. Examples of disconnected graphs: A B C D

12 Graphs and Trees Tree: an undirected graph with no cycles, and a node chosen to be the root A B C E D Source graph:

13 Graphs and Trees A C E B D C A E B D Tree1: root A Tree2: root C

14 A spanning tree of an undirected graph
A sub-graph that contains all the vertices, and no cycles. If we add any edge to the spanning tree, it forms a cycle, and the tree becomes a graph A B C D A B graph spanning tree C D

15 Examples A B C D All spanning trees of the graph on the previous slide

16 Complete graphs Graphs with all edges present – each vertex is connected to all other vertices A B C D E Dense graphs: relatively few of the possible edges are missing Sparse graphs: relatively few of the possible edges are present A complete graph

17 Weighted graphs and Networks
Weighted graphs – weights are assigned to each edge (e.g. road map) Networks: directed weighted graphs (some theories allow networks to be undirected) B 2 1 C A 2 4 3 D

18 Graph Representation Adjacency matrix Adjacency lists

19 Adjacency matrix – undirected graphs
Vertices: A,B,C,D Edges: AC, AB, AD, BD A B C D   A B C D The matrix is symmetrical A B C D

20 Adjacency matrix – directed graphs
Vertices: A,B,C,D Edges: AC, AB, BD, DA A B C D  A B C D A B C D

21 Adjacency lists – undirected graphs
Vertices: A,B,C,D Edges: AC, AB, AD, BD Heads lists A B C D B A D C A D A B A B C D

22 Adjacency lists – directed graphs
Vertices: A,B,C,D Edges: AC, AB, BD, DA Heads lists A B C B D C = D A A B C D


Download ppt "Chapter 9: Graphs Basic Concepts"

Similar presentations


Ads by Google