basics on graph theory

37
Graph theory Basics properties Classic problems Fundamental Knowledge Artificial Intelligence Graph theory G. Guérard Department of Nouvelles Energies Ecole Supérieure d’Ingénieurs Léonard de Vinci Lecture 1 GG | A.I. 1/37

Upload: guillaume-guerard

Post on 21-Jan-2018

139 views

Category:

Science


1 download

TRANSCRIPT

Page 1: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

Artificial IntelligenceGraph theory

G. Guérard

Department of Nouvelles EnergiesEcole Supérieure d’Ingénieurs Léonard de Vinci

Lecture 1

GG | A.I. 1/37

Page 2: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

OutlineOutlineOutlineOutlineOutlineOutlineOutlineOutlineOutlineOutlineOutlineOutlineOutlineOutlineOutlineOutlineOutline

1 Graph theoryUndirected and directed graphsDegree

2 Basics propertiesPath and CyclesSpecifications

3 Classic problemsEulerian circuitHamiltonian circuitSpanning treeGraph Coloring

GG | A.I. 2/37

Page 3: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

IntroductionIntroductionIntroductionIntroductionIntroductionIntroductionIntroductionIntroductionIntroductionIntroductionIntroductionIntroductionIntroductionIntroductionIntroductionIntroductionIntroduction

A graph is a mathematical object consisting of a set of:NODES - VEDGES - EGRAPH is denoted by G = (V ,E )

n = |V | and m = |E |A graph captures pairwise relationship between objects.

GG | A.I. 3/37

Page 4: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

Undirected graphUndirected graphUndirected graphUndirected graphUndirected graphUndirected graphUndirected graphUndirected graphUndirected graphUndirected graphUndirected graphUndirected graphUndirected graphUndirected graphUndirected graphUndirected graphUndirected graph

Undirected graph

An UNDIRECTED GRAPH is a pair: G = (V ,E ) where V is anonempty SET OF VERTICES and E = {(u, v) : u, v ∈ V } is aSET OF EDGES.

RemarkLet m = (p, q) ∈ E . This means that the edge m connects thevertex p and the vertex q. Moreover, in such a case p and q arecalled the ENDPOINTS of m and we say that p and q are incidentwith m, they are ADJACENT or neighbours of each other.

GG | A.I. 4/37

Page 5: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

ExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExample

Undirected graph

Consider the undirected graph G = (V ,E ) whereV = {a, b, c , d , e}, andE = {(a, b), (a, c), (a, e), (e, b), (d , b), (c , d), (d , e)}.

RemarkWe usually use a graphical representation of the graph. Thevertices are represented by points and the edges by linesconnecting the points.

GG | A.I. 5/37

Page 6: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

ExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExample

Bipartite

Consider a set of discipline D = {A,B,C ,D} and studentsS = {1, 2, 3, 4}. Every student is interested in some schoolsDi ⊂ D . The situation can be easily modelled by the graphG = (D ∪ S ,E ).

GG | A.I. 6/37

Page 7: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

Special edgesSpecial edgesSpecial edgesSpecial edgesSpecial edgesSpecial edgesSpecial edgesSpecial edgesSpecial edgesSpecial edgesSpecial edgesSpecial edgesSpecial edgesSpecial edgesSpecial edgesSpecial edgesSpecial edges

Multiedges

MULTIEDGES are edges which connect the same pair of verticesand a LOOP connects the vertex with itself. A graph withmultiedges and loops is called a MULTIGRAPH.

GG | A.I. 7/37

Page 8: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

Special edgesSpecial edgesSpecial edgesSpecial edgesSpecial edgesSpecial edgesSpecial edgesSpecial edgesSpecial edgesSpecial edgesSpecial edgesSpecial edgesSpecial edgesSpecial edgesSpecial edgesSpecial edgesSpecial edges

We can associated WEIGHTS to edges (see previous example).These weights can represent cast, profit, length, capacity, action,etc. of a given connection.

Weight

The weight is a mapping from the set of edges to a set of numbersor alphabet w : E → R or Σ. The graph with weight function ofnumbers is called a NETWORK and denoted by G = (V ,E ,w).Alphabet or probability give two others types of graphs: automata andmarkov chain.

GG | A.I. 8/37

Page 9: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

ExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExample

Weight

Let us consider the graph G = (V ,E ,w) seen previously, andthe weight function:e ∈ E (a, b) (a, c) (a, e) (d , b) (e, b) (d , e) (d , c)

w(e) -9 3 6 0 12 8 0.7

GG | A.I. 9/37

Page 10: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

Directed graphDirected graphDirected graphDirected graphDirected graphDirected graphDirected graphDirected graphDirected graphDirected graphDirected graphDirected graphDirected graphDirected graphDirected graphDirected graphDirected graph

Directed graph

A DIRECTED GRAPH is a pair G = (V ,E ) where V is anonempty set of vertices and E = {(u, v) : u, v ∈ V } is a set ofdirected edges (or ARCS). If (p, q) ∈ E , p is the head of the arcand q is the tail of the arc.

GG | A.I. 10/37

Page 11: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

ExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExample

Directed graph

Consider the directed graph G = (V ,E ) whereV = {a, b, c , d , e}, andE = {(a, b), (a, c), (a, e), (e, b), (d , b), (c , d), (d , e)}.

GG | A.I. 11/37

Page 12: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

DegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegree

Undirected graph

The DEGREE of the vertex v is the number of edges incident to thevertex, with loops counted twice. The degree of a vertex isdenoted deg(v) or Γ(v). A vertex v with degree 0 is called anISOLATED. A vertex with degree 1 is called an endvertex or aLEAF.

The degree of the graph G,4(G ) is the maximum degree of itsvertices.4(G ) = max

v∈VΓ(V ).

GG | A.I. 12/37

Page 13: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

ExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExample

Degree

Consider the graph

Isolated vertices are x5 and x7. Leaves are x4 and x6.4(G ) = max

v∈VΓ(V ) = deg(x2) = 5.

GG | A.I. 13/37

Page 14: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

DegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegree

Directed graph

The IN-DEGREE of a vertex v , Γ−(v), is the number of arcincoming. The OUT-DEGREE of a vertex v , Γ+(v), is the numberof arc going out. The degree of a vertex isΓ(v) = Γ−(v) + Γ+(v).

A vertex s for which Γ−(v) = 0 and Γ+(v) > 0 is called aSOURCE and a vertex t for which Γ−(v) > 0 and Γ+(v) = 0 iscalled a SINK.

GG | A.I. 14/37

Page 15: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

ExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExample

Degree

Consider the directed graph

Γ−(x) = 2, Γ+(x) = 3; Γ−(y) = 5, Γ+(y) = 1.4(G ) = max

v∈VΓ(V ) = deg(y) = 6. There is no source or sink

(technically, y can be called a sink because we can’t escape fromy to another vertex).

GG | A.I. 15/37

Page 16: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

ExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExample

Source and sinkConsider the directed graph

Sources are vertices a and c , sink is the vertex e.

GG | A.I. 16/37

Page 17: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

DegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegreeDegree

TheoremFor any graph, we have ∑

v∈Vdeg(v) = 2|E |. The demonstration is

trivial, any edge connects two vertices. So an edge (directed orundirected) increase the total of degrees by two.

TheoremThe number of vertices of odd degree is even. The sum of all thedegrees is equal to twice the number of edges. Since the sum of thedegrees is even and the sum of the degrees of vertices with even degreeis even, the sum of the degrees of vertices with odd degree must beeven. If the sum of the degrees of vertices with odd degree is even,there must be an even number of those vertices.

GG | A.I. 17/37

Page 18: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

DefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinition

PathA PATH (or CHAIN in a directed graph) in a graph is a sequenceof edges (or arcs) which connect a sequence of vertices. To be morespecific, a sequence (e1, . . . , en) is called a path of the LENGTH nif there are vertices v0, . . . , vn such that ei = (vi−1, vi ), i = 1..n.The first vertex v1 is called START vertex, and the last vertex vnis called END vertex. Both of them are called TERMINAL verticesof the path. If v0 = vn then the sequence is called a closed path.A closed path which the edges and vertices are distinct (exeptterminals) is called a CYCLE (or a CIRCUIT in directed graph).

GG | A.I. 18/37

Page 19: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

ExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExampleExample

PathConsider the graph

(d , e, g , b, a) is a closed path. (d , g , b, a) is a cycle.

GG | A.I. 19/37

Page 20: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

DefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinition

Acyclic

A graph without cycles is called ACYCLIC.

ConnectedA graph is called CONNECTED if for any couple of vertices uand v there exists a path connecting u and v , i.e. with start vertexis u and end vertex is v .

GG | A.I. 20/37

Page 21: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

TreeTreeTreeTreeTreeTreeTreeTreeTreeTreeTreeTreeTreeTreeTreeTreeTree

TreeA connected and acyclic graph is called a TREE.

a, b, c , d are trees, e has a cycle.

GG | A.I. 21/37

Page 22: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

Complete graphComplete graphComplete graphComplete graphComplete graphComplete graphComplete graphComplete graphComplete graphComplete graphComplete graphComplete graphComplete graphComplete graphComplete graphComplete graphComplete graph

Complete graph

A COMPLETE graph Kn is the graph with n vertices and all thepairs of vertices are adjacent to each other.

TheoremIn any Kn, deg(v) = n− 1, ∀v ∈ V . The number of edges is

|E | =[

i= 1]n∑i = n(n−1)2 .

GG | A.I. 22/37

Page 23: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

SubgraphSubgraphSubgraphSubgraphSubgraphSubgraphSubgraphSubgraphSubgraphSubgraphSubgraphSubgraphSubgraphSubgraphSubgraphSubgraphSubgraph

Subgraph

A graph H = (VH ,EH) is called a SUBGRAPH of G = (V ,E )when VH ⊂ V and EH ⊂ E .

Consider graphs

G1 and G2 are subgraphs of G .

GG | A.I. 23/37

Page 24: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

Eulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuit

ProblemGIVEN THE GRAPH, IS IT POSSIBLE TO CONSTRUCT A PATH (OR

A CYCLE) WHICH VISITS EACH EDGE EXACTLY ONCE?

Eulerian circuitHow can we recognize Eulerian graph? They have twocharacterizations: node degrees, existence of a special collectionof cycles.

TheoremFor a connected graph G, the following statements areequivalent: G is Eulerian (1); Every vertex of G has even degree(2); The edges of G can be partitioned into edge-disjoint cycles (3).

GG | A.I. 24/37

Page 25: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

Eulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuit

Proof 1 > 2Assume G is Eulerian ⇐⇒ there exists a circuit that includesevery edge of G . Every time a circuit enters a node v on anedge, it leave on a different edge. Since the circuit never repeatsan edge, the number of edges incident with v is even⇒ deg(v)is even.

GG | A.I. 25/37

Page 26: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

Eulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuit

Proof 2>3Suppose every node of G has even degree. We use induction onthe number of cycles in G . G is connected and without nodes ofdegree 1, so G is not a tree, Ghas at least one cycle Cn1 . Let G ′

be the graph obtained by removing Cn1 from G . All edges of G ′

have even degree and we can proceed recursively to prove thatG ′ can be partitioned into cycles Cn2 . . . Cnk . Then, Cn1 . . .Cnk isa partition of G into edge-disjoint cycles.

GG | A.I. 26/37

Page 27: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

Eulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuitEulerian circuit

Proof 3>1Suppose that the edges of G can be partitioned into k edge-disjoint cyclesCn1 . . .Cnk . Because G is connected, every such cycle is an Eulerian circuitwhich must share a node with another cycle⇒ these circuits can be patcheduntil we obtain one Eulerian circuit which is the whole graph G .

GG | A.I. 27/37

Page 28: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

Eulerian pathEulerian pathEulerian pathEulerian pathEulerian pathEulerian pathEulerian pathEulerian pathEulerian pathEulerian pathEulerian pathEulerian pathEulerian pathEulerian pathEulerian pathEulerian pathEulerian path

QuestionHow to recognize graph which contain an Eulerian path?Note that: If the graph is Eulerian, then it contains an Eulerian pathbecause every Eulerian circuit is also a path.

Corollary

A connected graph G contains an Eulerian path iff there are atmost two vertices of odd degree.

GG | A.I. 28/37

Page 29: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

Hamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuit

ProblemGIVEN THE GRAPH, IS IT POSSIBLE TO CONSTRUCT A PATH (OR

A CYCLE) WHICH VISITS EACH VERTEX EXACTLY ONCE?

Hamiltonian circuitHow can we recognize Eulerian graph? There is no simplecharacterisation for this problem. Hamiltonian graphs can haveall even degrees, all odd degrees, or a mixture.

GG | A.I. 29/37

Page 30: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

Hamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuitHamiltonian circuit

Dirac’s TheoremLet G be a graph of order n ≥ 3. If deg(G ) ≥ n

2 , then G isHamiltonian.

Dirac’s Theorem 2Let G be a graph of order n ≥ 3. If deg(x) + deg(y) ≥ n for allpairs of nonadjacent nodes x , y , then G is Hamiltonian.

GG | A.I. 30/37

Page 31: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

DefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinition

Spanning tree

A SPANNING TREE T of an undirected graph G is a subgraph that is atree which includes all of the vertices of G. A MINIMUM SPANNING TREE(MST) connects all the vertices together with the minimal total weightingfor its edges (see KRUSKAL and PRIM).

ApplicationsIn order to minimize the cost of power networks, wiring connections, piping,automatic speech recognition, etc., we use algorithms that gradually build aspanning tree (or many such trees) as intermediate steps in the process offinding the minimum spanning tree.The Internet and many other telecommunications networks havetransmission links that connect nodes together in a mesh topology thatincludes some loops. In order to avoid bridge loops and routing loops, manyrouting protocols designed for such networks require each router toremember a spanning tree.

GG | A.I. 31/37

Page 32: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

Kruskal’s AlgorithmKruskal’s AlgorithmKruskal’s AlgorithmKruskal’s AlgorithmKruskal’s AlgorithmKruskal’s AlgorithmKruskal’s AlgorithmKruskal’s AlgorithmKruskal’s AlgorithmKruskal’s AlgorithmKruskal’s AlgorithmKruskal’s AlgorithmKruskal’s AlgorithmKruskal’s AlgorithmKruskal’s AlgorithmKruskal’s AlgorithmKruskal’s Algorithm

KRUSKAL’S ALGORITHM is a greedy algorithm for the MSTproblem.

Initially, let T ← ∅ be the empty graph on V .Examine the edges in E in increasing order of weight:

If an edge connects two unconnected components of T , then addthe edge to TElse, discard the edge and continue.

Terminate when there is only one connected component.

GG | A.I. 32/37

Page 33: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

Prim’s AlgorithmPrim’s AlgorithmPrim’s AlgorithmPrim’s AlgorithmPrim’s AlgorithmPrim’s AlgorithmPrim’s AlgorithmPrim’s AlgorithmPrim’s AlgorithmPrim’s AlgorithmPrim’s AlgorithmPrim’s AlgorithmPrim’s AlgorithmPrim’s AlgorithmPrim’s AlgorithmPrim’s AlgorithmPrim’s Algorithm

PRIM’S ALGORITHM is a greedy algorithm for the MSTproblem.

Initialize a tree with a single vertex, chosen arbitrarily from the graph.Grow the tree by one edge: of the edges that connect the tree to verticesnot yet in the tree, find the minimum-weight edge, and transfer it tothe tree.Repeat step 2 (until all vertices are in the tree).

GG | A.I. 33/37

Page 34: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

DefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinition

DefinitionGRAPH COLORING is a special case of graph labeling; it is anassignment of labels traditionally called "colors" to elements of agraph subject to certain constraints. In its simplest form, it is away of coloring the vertices of a graph such that no two adjacentvertices share the same color; this is called a VERTEX COLORING.Similarly, an EDGE COLORING assigns a color to each edge sothat no two adjacent edges share the same color, and a face coloringof a planar graph assigns a color to each face or region so thatno two faces that share a boundary have the same color.

Without any qualification, a coloring is always a vertex coloring.

GG | A.I. 34/37

Page 35: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

DefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinitionDefinition

DefinitionGiven a graph G (V ,E ) with vertex set V and edge set E , a k-colouring of Gis a function C : V → {1 . . . k} that assigns distinct values to adjacentvertices. For each edge e = (u, v) ∈ E , we require C (u) 6= C (v). If G has ak-colouring then it is said to be k-colourable. In words, a graph isk-colourable if one can draw it in such a way that no two adjacent verticeshave the same colour. The chromatic number χ(G ) is the smallest number ksuch that G is k-colourable.

GG | A.I. 35/37

Page 36: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

ApplicationsApplicationsApplicationsApplicationsApplicationsApplicationsApplicationsApplicationsApplicationsApplicationsApplicationsApplicationsApplicationsApplicationsApplicationsApplicationsApplications

The problem of coloring a graph arises in many practical areassuch as pattern matching, sports scheduling, designing seatingplans, exam timetabling, the scheduling of taxis, and solving Sudokupuzzles.

Example

A given set of jobs need to be assigned to time slots, each job requiresone such slot. Jobs can be scheduled in any order, but pairs of jobsmay be in conflict in the sense that they may not be assigned to thesame time slot, for example because they both rely on a sharedresource. The corresponding graph contains a vertex for every joband an edge for every conflicting pair of jobs. The chromatic numberof the graph is exactly the minimum makespan, the optimal time tofinish all jobs without conflicts.

GG | A.I. 36/37

Page 37: Basics on Graph Theory

Graph theory Basics properties Classic problems Fundamental Knowledge

Fundamental knowledgeFundamental knowledgeFundamental knowledgeFundamental knowledgeFundamental knowledgeFundamental knowledgeFundamental knowledgeFundamental knowledgeFundamental knowledgeFundamental knowledgeFundamental knowledgeFundamental knowledgeFundamental knowledgeFundamental knowledgeFundamental knowledgeFundamental knowledgeFundamental knowledge

YOU HAVE TO KNOW BEFORE THE TUTORIAL:1 Caracteristics and differences between undirected and directed

graphs;2 Notion of degrees, how to calculate them;3 Notion of path and cycles;4 Hamiltonian and eulerian definitions (Problem block);5 Kruskal and Prim’s algorithms;6 Graph coloration.

GG | A.I. 37/37