# Chapter 9: Graphs Basic Concepts

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

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

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

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

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

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

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

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

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

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.

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

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

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:

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

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

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

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

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

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

Vertices: A,B,C,D Edges: AC, AB, BD, DA A B C D  A B C D A B C D