SlideShare ist ein Scribd-Unternehmen logo
1 von 73
1
Confidential
2
Confidential
Basic Graph Algorithms
Oleksandr Basalkevych
Senior Software Engineer
3
Confidential
Agenda
1. What is a graph? Areas of application.
2. The main types of graphs.
3. Ways to represent graphs in memory.
4. Adjacency list
5. Depth first search (DFS)
6. Breadth first search (BFS).
7. Searching for connected components
8. Searching for the shortest path in an unweighted graph
4
Confidential
4
What is a graph?
5
Confidential
G = (V, E, I)
• V a set of vertices (also called nodes or points);
• E a set of edges (also called links or lines);
• I: E → {{x, y} | (x, y) ∈ V2 ∧ x ≠ y} an incidence function mapping every
edge to an unordered pair of vertices (i.e., an edge is associated with
two distinct vertices).
What is a graph
v0
v1
v2
v3
v4
v5
v6
v7 v8 v11
v9
v12
v10
v13
v15
v14
e0
e1
e2
e3 e4
e6
e5 e7
e10
e11
e9
e12
e13 e14
e8
e15
e16
e17 e19
e18
V = { v0, v1, …, v15 }
E = { e0, e1, …, e19 }
I = { e0 → {v0, v1},
e1 → {v1, v2},
…
e19 → {v14, v15} }
6
Confidential
6
Areas of application
7
Confidential
Areas of application
• Social networks
8
Confidential
Areas of application
• Roads / GPS
9
Confidential
Areas of application
• Positional games
10
Confidential
Areas of application
• Process workflow
11
Confidential
11
The main types of graphs
12
Confidential
The main types of graphs
• Directed / undirected
v0
v1
v2
v3
v4
v5
• Weighted / unweighted
v0
v1
v2
v3
v5
8
7
v4
9
3
2
5 7
• Multigraph
v0
v1 v2
v3
v5
v4
• With self loops
v0
v1 v2
v3
v5
v4
13
Confidential
13
Ways to represent graphs in
memory
14
Confidential
The graph we are going to work with
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
15
Confidential
Ways to represent graphs in memory
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9 v11
v12
• Adjacency matrix
0 0 0 0 0 1 0 0 0 0 0 0 0 0 0
0 0 0 1 0 0 1 0 0 0 0 0 0 0 0
0 0 0 1 0 0 0 0 0 0 0 0 0 0 0
0 1 1 0 1 1 0 0 0 0 0 0 0 0 0
0 0 0 1 0 1 0 0 1 0 0 0 0 0 0
1 0 0 1 1 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 0 1 0 0 0 0 0 0
0 0 0 0 1 0 0 1 0 1 1 0 0 0 0
0 0 0 0 0 0 0 0 1 0 1 1 0 0 0
0 0 0 0 0 0 0 0 1 1 0 1 0 1 0
0 0 0 0 0 0 0 0 0 1 1 0 1 0 0
0 0 0 0 0 0 0 0 0 0 0 1 0 0 0
0 0 0 0 0 0 0 0 0 0 1 0 0 0 1
0 0 0 0 0 0 1 0 0 0 0 0 0 1 0
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
0 1 2 3 4 5 6 7 8 91011
121314
• Adjacency list
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
5
3 6
3
1 2 4 5
3 5 8
0 3 4
1 14
8
4 7 9 10
8 10 11
8 9 11 13
9 10 12
11
10 14
6 13
16
Confidential
16
Depth first search (DFS)
17
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v0
Seq: v0
18
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v5 v0
Seq: v0 v5
19
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v3 v5 v0
Seq: v0 v5 v3
20
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v1 v3 v5 v0
Seq: v0 v5 v3 v1
21
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v6 v1 v3 v5 v0
Seq: v0 v5 v3 v1 v6
22
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v14 v6 v1 v3 v5 v0
Seq: v0 v5 v3 v1 v6 v14
23
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v13 v14 v6 v1 v3 v5 v0
Seq: v0 v5 v3 v1 v6 v14 v13
24
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v10 v13 v14 v6 v1 v3 v5 v0
Seq: v0 v5 v3 v1 v6 v14 v13 v10
25
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v8 v10 v13 v14 v6 v1 v3 v5 v0
Seq: v0 v5 v3 v1 v6 v14 v13 v10 v8
26
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v4 v8 v10 v13 v14 v6 v1 v3 v5 v0
Seq: v0 v5 v3 v1 v6 v14 v13 v10 v8 v4
27
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v8 v10 v13 v14 v6 v1 v3 v5 v0
Seq: v0 v5 v3 v1 v6 v14 v13 v10 v8 v4
28
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v7 v8 v10 v13 v14 v6 v1 v3 v5 v0
Seq: v0 v5 v3 v1 v6 v14 v13 v10 v8 v4 v7
29
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v8 v10 v13 v14 v6 v1 v3 v5 v0
Seq: v0 v5 v3 v1 v6 v14 v13 v10 v8 v4 v7
30
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v9 v8 v10 v13 v14 v6 v1 v3 v5 v0
Seq: v0 v5 v3 v1 v6 v14 v13 v10 v8 v4 v7 v9
31
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v11 v9 v8 v10 v13 v14 v6 v1 v3 v5 v0
Seq: v0 v5 v3 v1 v6 v14 v13 v10 v8 v4 v7 v9 v11
32
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v12 v11 v9 v8 v10 v13 v14 v6 v1 v3 v5 v0
Seq: v0 v5 v3 v1 v6 v14 v13 v10 v8 v4 v7 v9 v11 v12
33
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v11 v9 v8 v10 v13 v14 v6 v1 v3 v5 v0
Seq: v0 v5 v3 v1 v6 v14 v13 v10 v8 v4 v7 v9 v11 v12
34
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v9 v8 v10 v13 v14 v6 v1 v3 v5 v0
Seq: v0 v5 v3 v1 v6 v14 v13 v10 v8 v4 v7 v9 v11 v12
35
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v8 v10 v13 v14 v6 v1 v3 v5 v0
Seq: v0 v5 v3 v1 v6 v14 v13 v10 v8 v4 v7 v9 v11 v12
36
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v10 v13 v14 v6 v1 v3 v5 v0
Seq: v0 v5 v3 v1 v6 v14 v13 v10 v8 v4 v7 v9 v11 v12
37
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v13 v14 v6 v1 v3 v5 v0
Seq: v0 v5 v3 v1 v6 v14 v13 v10 v8 v4 v7 v9 v11 v12
38
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v14 v6 v1 v3 v5 v0
Seq: v0 v5 v3 v1 v6 v14 v13 v10 v8 v4 v7 v9 v11 v12
39
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v6 v1 v3 v5 v0
Seq: v0 v5 v3 v1 v6 v14 v13 v10 v8 v4 v7 v9 v11 v12
40
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v1 v3 v5 v0
Seq: v0 v5 v3 v1 v6 v14 v13 v10 v8 v4 v7 v9 v11 v12
41
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v3 v5 v0
Seq: v0 v5 v3 v1 v6 v14 v13 v10 v8 v4 v7 v9 v11 v12
42
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v2 v3 v5 v0
Seq: v0 v5 v3 v1 v6 v14 v13 v10 v8 v4 v7 v9 v11 v12 v2
43
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v3 v5 v0
Seq: v0 v5 v3 v1 v6 v14 v13 v10 v8 v4 v7 v9 v11 v12 v2
44
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v5 v0
Seq: v0 v5 v3 v1 v6 v14 v13 v10 v8 v4 v7 v9 v11 v12 v2
45
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack: v0
Seq: v0 v5 v3 v1 v6 v14 v13 v10 v8 v4 v7 v9 v11 v12 v2
46
Confidential
DFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Stack:
Seq: v0 v5 v3 v1 v6 v14 v13 v10 v8 v4 v7 v9 v11 v12 v2
47
Confidential
47
Searching for connected
components
48
Confidential
The graph we are going to work with
A connected component or simply component of an undirected graph
is a subgraph in which each pair of nodes is connected with each
other via a path.
Let’s try to simplify it further, though. A set of nodes forms a
connected component in an undirected graph if any node from the set
of nodes can reach any other node by traversing edges. The main
point here is reachability.
49
Confidential
The graph we are going to work with
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
1
50
Confidential
The graph we are going to work with
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
1
2 3
51
Confidential
51
Breadth first search (BFS)
Shortest path
52
Confidential
BFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Queue: v0
Seq: v0
5 6 7 8 9 10 11 12 13 14
0 1 2 3 4
1 3 5 7 8 10 11 13 14
12
9
0 2 4 6
Parents:
53
Confidential
BFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Queue: v5
Seq: v0 v5
0 6 7 8 9 10 11 12 13 14
0 1 2 3 4
1 3 5 7 8 10 11 13 14
12
9
0 2 4 6
Parents:
54
Confidential
BFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Queue: v3 v4
Seq: v0 v5 v3 v4
0 6 7 8 9 10 11 12 13 14
0 1 2 5 5
1 3 5 7 8 10 11 13 14
12
9
0 2 4 6
Parents:
55
Confidential
BFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Queue: v4 v1 v2
Seq: v0 v5 v3 v4 v1 v2
0 6 7 8 9 10 11 12 13 14
0 3 3 5 5
1 3 5 7 8 10 11 13 14
12
9
0 2 4 6
Parents:
56
Confidential
BFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Queue: v1 v2 v8
Seq: v0 v5 v3 v4 v1 v2 v8
0 6 7 4 9 10 11 12 13 14
0 3 3 5 5
1 3 5 7 8 10 11 13 14
12
9
0 2 4 6
Parents:
57
Confidential
BFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Queue: v2 v8 v6
Seq: v0 v5 v3 v4 v1 v2 v8 v6
0 1 7 4 9 10 11 12 13 14
0 3 3 5 5
1 3 5 7 8 10 11 13 14
12
9
0 2 4 6
Parents:
58
Confidential
BFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Queue: v8 v6
Seq: v0 v5 v3 v4 v1 v2 v8 v6
0 1 7 4 9 10 11 12 13 14
0 3 3 5 5
1 3 5 7 8 10 11 13 14
12
9
0 2 4 6
Parents:
59
Confidential
BFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Queue: v6 v7 v9 v10
Seq: v0 v5 v3 v4 v1 v2 v8 v6 v7 v9 v10
0 1 8 4 8 8 11 12 13 14
0 3 3 5 5
1 3 5 7 8 10 11 13 14
12
9
0 2 4 6
Parents:
60
Confidential
BFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Queue: v7 v9 v10 v14
Seq: v0 v5 v3 v4 v1 v2 v8 v6 v7 v9 v10 v14
0 1 8 4 8 8 11 12 13 6
0 3 3 5 5
1 3 5 7 8 10 11 13 14
12
9
0 2 4 6
Parents:
61
Confidential
BFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Queue: v9 v10 v14
Seq: v0 v5 v3 v4 v1 v2 v8 v6 v7 v9 v10 v14
0 1 8 4 8 8 11 12 13 6
0 3 3 5 5
1 3 5 7 8 10 11 13 14
12
9
0 2 4 6
Parents:
62
Confidential
BFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Queue: v10 v14 v11
Seq: v0 v5 v3 v4 v1 v2 v8 v6 v7 v9 v10 v14 v11
0 1 8 4 8 8 9 12 13 6
0 3 3 5 5
1 3 5 7 8 10 11 13 14
12
9
0 2 4 6
Parents:
63
Confidential
BFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Queue: v14 v11 v13
Seq: v0 v5 v3 v4 v1 v2 v8 v6 v7 v9 v10 v14 v11 v13
0 1 8 4 8 8 9 12 10 6
0 3 3 5 5
1 3 5 7 8 10 11 13 14
12
9
0 2 4 6
Parents:
64
Confidential
BFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Queue: v11 v13
Seq: v0 v5 v3 v4 v1 v2 v8 v6 v7 v9 v10 v14 v11 v13
0 1 8 4 8 8 9 12 10 6
0 3 3 5 5
1 3 5 7 8 10 11 13 14
12
9
0 2 4 6
Parents:
65
Confidential
BFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Queue: v13 v12
Seq: v0 v5 v3 v4 v1 v2 v8 v6 v7 v9 v10 v14 v11 v13 v12
0 1 8 4 8 8 9 11 10 6
0 3 3 5 5
1 3 5 7 8 10 11 13 14
12
9
0 2 4 6
Parents:
66
Confidential
BFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Queue: v12
Seq: v0 v5 v3 v4 v1 v2 v8 v6 v7 v9 v10 v14 v11 v13 v12
0 1 8 4 8 8 9 11 10 6
0 3 3 5 5
1 3 5 7 8 10 11 13 14
12
9
0 2 4 6
Parents:
67
Confidential
BFS
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9
v11
v12
Queue:
Seq: v0 v5 v3 v4 v1 v2 v8 v6 v7 v9 v10 v14 v11 v13 v12
0 1 8 4 8 8 9 11 10 6
0 3 3 5 5
1 3 5 7 8 10 11 13 14
12
9
0 2 4 6
Parents:
68
Confidential
BFS: Getting the shortest path
0 1 8 4 8 8 9 11 10 6
0 3 3 5 5
1 3 5 7 8 10 11 13 14
12
9
0 2 4 6
Parents:
Restore the shortest path from v0 to v9:
Path: v9
v0
v1
v2
v4
v3
v5
v6
v14
v13
v10
v7
v8
v9 v11
v12
69
Confidential
BFS: Getting the shortest path
0 1 8 4 8 8 9 11 10 6
0 3 3 5 5
1 3 5 7 8 10 11 13 14
12
9
0 2 4 6
Parents:
Restore the shortest path from v0 to v9:
Path: v9 v8
v0
v1
v2
v4
v3
v5
v6
v14
v10
v7
v8
v9 v11
v12
v13
70
Confidential
BFS: Getting the shortest path
0 1 8 4 8 8 9 11 10 6
0 3 3 5 5
1 3 5 7 8 10 11 13 14
12
9
0 2 4 6
Parents:
Restore the shortest path from v0 to v9:
Path: v9 v8 v4
v0
v1
v2
v4
v3
v5
v6
v14
v10
v7
v8
v9 v11
v12
v13
71
Confidential
BFS: Getting the shortest path
0 1 8 4 8 8 9 11 10 6
0 3 3 5 5
1 3 5 7 8 10 11 13 14
12
9
0 2 4 6
Parents:
Restore the shortest path from v0 to v9:
Path: v9 v8 v4 v5
v0
v1
v2
v4
v3
v5
v6
v14
v10
v7
v8
v9 v11
v12
v13
72
Confidential
BFS: Getting the shortest path
0 1 8 4 8 8 9 11 10 6
0 3 3 5 5
1 3 5 7 8 10 11 13 14
12
9
0 2 4 6
Parents:
Restore the shortest path from v0 to v9:
Path: v9 v8 v4 v5 v0
v0
v1
v2
v4
v3
v5
v6
v14
v10
v7
v8
v9 v11
v12
v13
73
Thank You

Weitere ähnliche Inhalte

Mehr von GlobalLogic Ukraine

GlobalLogic .NET Community Webinar #3 "Exploring Serverless with Azure Functi...
GlobalLogic .NET Community Webinar #3 "Exploring Serverless with Azure Functi...GlobalLogic .NET Community Webinar #3 "Exploring Serverless with Azure Functi...
GlobalLogic .NET Community Webinar #3 "Exploring Serverless with Azure Functi...GlobalLogic Ukraine
 
Страх і сила помилок - IT Inside від GlobalLogic Education
Страх і сила помилок - IT Inside від GlobalLogic EducationСтрах і сила помилок - IT Inside від GlobalLogic Education
Страх і сила помилок - IT Inside від GlobalLogic EducationGlobalLogic Ukraine
 
GlobalLogic .NET Webinar #2 “Azure RBAC and Managed Identity”
GlobalLogic .NET Webinar #2 “Azure RBAC and Managed Identity”GlobalLogic .NET Webinar #2 “Azure RBAC and Managed Identity”
GlobalLogic .NET Webinar #2 “Azure RBAC and Managed Identity”GlobalLogic Ukraine
 
GlobalLogic QA Webinar “What does it take to become a Test Engineer”
GlobalLogic QA Webinar “What does it take to become a Test Engineer”GlobalLogic QA Webinar “What does it take to become a Test Engineer”
GlobalLogic QA Webinar “What does it take to become a Test Engineer”GlobalLogic Ukraine
 
“How to Secure Your Applications With a Keycloak?
“How to Secure Your Applications With a Keycloak?“How to Secure Your Applications With a Keycloak?
“How to Secure Your Applications With a Keycloak?GlobalLogic Ukraine
 
GlobalLogic Machine Learning Webinar “Advanced Statistical Methods for Linear...
GlobalLogic Machine Learning Webinar “Advanced Statistical Methods for Linear...GlobalLogic Machine Learning Webinar “Advanced Statistical Methods for Linear...
GlobalLogic Machine Learning Webinar “Advanced Statistical Methods for Linear...GlobalLogic Ukraine
 
GlobalLogic Machine Learning Webinar “Statistical learning of linear regressi...
GlobalLogic Machine Learning Webinar “Statistical learning of linear regressi...GlobalLogic Machine Learning Webinar “Statistical learning of linear regressi...
GlobalLogic Machine Learning Webinar “Statistical learning of linear regressi...GlobalLogic Ukraine
 
GlobalLogic C++ Webinar “The Minimum Knowledge to Become a C++ Developer”
GlobalLogic C++ Webinar “The Minimum Knowledge to Become a C++ Developer”GlobalLogic C++ Webinar “The Minimum Knowledge to Become a C++ Developer”
GlobalLogic C++ Webinar “The Minimum Knowledge to Become a C++ Developer”GlobalLogic Ukraine
 
Embedded Webinar #17 "Low-level Network Testing in Embedded Devices Development"
Embedded Webinar #17 "Low-level Network Testing in Embedded Devices Development"Embedded Webinar #17 "Low-level Network Testing in Embedded Devices Development"
Embedded Webinar #17 "Low-level Network Testing in Embedded Devices Development"GlobalLogic Ukraine
 
GlobalLogic Webinar "Introduction to Embedded QA"
GlobalLogic Webinar "Introduction to Embedded QA"GlobalLogic Webinar "Introduction to Embedded QA"
GlobalLogic Webinar "Introduction to Embedded QA"GlobalLogic Ukraine
 
C++ Webinar "Why Should You Learn C++ in 2021-22?"
C++ Webinar "Why Should You Learn C++ in 2021-22?"C++ Webinar "Why Should You Learn C++ in 2021-22?"
C++ Webinar "Why Should You Learn C++ in 2021-22?"GlobalLogic Ukraine
 
GlobalLogic Test Automation Live Testing Session “Android Behind UI — Testing...
GlobalLogic Test Automation Live Testing Session “Android Behind UI — Testing...GlobalLogic Test Automation Live Testing Session “Android Behind UI — Testing...
GlobalLogic Test Automation Live Testing Session “Android Behind UI — Testing...GlobalLogic Ukraine
 
GlobalLogic Test Automation Online TechTalk “Test Driven Development as a Per...
GlobalLogic Test Automation Online TechTalk “Test Driven Development as a Per...GlobalLogic Test Automation Online TechTalk “Test Driven Development as a Per...
GlobalLogic Test Automation Online TechTalk “Test Driven Development as a Per...GlobalLogic Ukraine
 
GlobalLogic Azure TechTalk ONLINE “Marketing Data Lake in Azure”
GlobalLogic Azure TechTalk ONLINE “Marketing Data Lake in Azure”GlobalLogic Azure TechTalk ONLINE “Marketing Data Lake in Azure”
GlobalLogic Azure TechTalk ONLINE “Marketing Data Lake in Azure”GlobalLogic Ukraine
 
GlobalLogic Test Automation Online TechTalk “Playwright — A New Hope”
GlobalLogic Test Automation Online TechTalk “Playwright — A New Hope”GlobalLogic Test Automation Online TechTalk “Playwright — A New Hope”
GlobalLogic Test Automation Online TechTalk “Playwright — A New Hope”GlobalLogic Ukraine
 
Java Webinar #13 “Where Is My Development Zone?”
Java Webinar #13 “Where Is My Development Zone?”Java Webinar #13 “Where Is My Development Zone?”
Java Webinar #13 “Where Is My Development Zone?”GlobalLogic Ukraine
 
NET Webinar #1 "Is There a Life Outside the Entity Framework"
NET Webinar #1 "Is There a Life Outside the Entity Framework"NET Webinar #1 "Is There a Life Outside the Entity Framework"
NET Webinar #1 "Is There a Life Outside the Entity Framework"GlobalLogic Ukraine
 
Online TechTalk “Flutter Mobile Development”
Online TechTalk “Flutter Mobile Development”Online TechTalk “Flutter Mobile Development”
Online TechTalk “Flutter Mobile Development”GlobalLogic Ukraine
 
Online TechTalk  "Patterns in Embedded SW Design"
Online TechTalk  "Patterns in Embedded SW Design"Online TechTalk  "Patterns in Embedded SW Design"
Online TechTalk  "Patterns in Embedded SW Design"GlobalLogic Ukraine
 
Сloud Webinar #1 “Architecture of Highly Loaded Geo-Distributed Applications”
Сloud Webinar #1 “Architecture of Highly Loaded Geo-Distributed Applications”Сloud Webinar #1 “Architecture of Highly Loaded Geo-Distributed Applications”
Сloud Webinar #1 “Architecture of Highly Loaded Geo-Distributed Applications”GlobalLogic Ukraine
 

Mehr von GlobalLogic Ukraine (20)

GlobalLogic .NET Community Webinar #3 "Exploring Serverless with Azure Functi...
GlobalLogic .NET Community Webinar #3 "Exploring Serverless with Azure Functi...GlobalLogic .NET Community Webinar #3 "Exploring Serverless with Azure Functi...
GlobalLogic .NET Community Webinar #3 "Exploring Serverless with Azure Functi...
 
Страх і сила помилок - IT Inside від GlobalLogic Education
Страх і сила помилок - IT Inside від GlobalLogic EducationСтрах і сила помилок - IT Inside від GlobalLogic Education
Страх і сила помилок - IT Inside від GlobalLogic Education
 
GlobalLogic .NET Webinar #2 “Azure RBAC and Managed Identity”
GlobalLogic .NET Webinar #2 “Azure RBAC and Managed Identity”GlobalLogic .NET Webinar #2 “Azure RBAC and Managed Identity”
GlobalLogic .NET Webinar #2 “Azure RBAC and Managed Identity”
 
GlobalLogic QA Webinar “What does it take to become a Test Engineer”
GlobalLogic QA Webinar “What does it take to become a Test Engineer”GlobalLogic QA Webinar “What does it take to become a Test Engineer”
GlobalLogic QA Webinar “What does it take to become a Test Engineer”
 
“How to Secure Your Applications With a Keycloak?
“How to Secure Your Applications With a Keycloak?“How to Secure Your Applications With a Keycloak?
“How to Secure Your Applications With a Keycloak?
 
GlobalLogic Machine Learning Webinar “Advanced Statistical Methods for Linear...
GlobalLogic Machine Learning Webinar “Advanced Statistical Methods for Linear...GlobalLogic Machine Learning Webinar “Advanced Statistical Methods for Linear...
GlobalLogic Machine Learning Webinar “Advanced Statistical Methods for Linear...
 
GlobalLogic Machine Learning Webinar “Statistical learning of linear regressi...
GlobalLogic Machine Learning Webinar “Statistical learning of linear regressi...GlobalLogic Machine Learning Webinar “Statistical learning of linear regressi...
GlobalLogic Machine Learning Webinar “Statistical learning of linear regressi...
 
GlobalLogic C++ Webinar “The Minimum Knowledge to Become a C++ Developer”
GlobalLogic C++ Webinar “The Minimum Knowledge to Become a C++ Developer”GlobalLogic C++ Webinar “The Minimum Knowledge to Become a C++ Developer”
GlobalLogic C++ Webinar “The Minimum Knowledge to Become a C++ Developer”
 
Embedded Webinar #17 "Low-level Network Testing in Embedded Devices Development"
Embedded Webinar #17 "Low-level Network Testing in Embedded Devices Development"Embedded Webinar #17 "Low-level Network Testing in Embedded Devices Development"
Embedded Webinar #17 "Low-level Network Testing in Embedded Devices Development"
 
GlobalLogic Webinar "Introduction to Embedded QA"
GlobalLogic Webinar "Introduction to Embedded QA"GlobalLogic Webinar "Introduction to Embedded QA"
GlobalLogic Webinar "Introduction to Embedded QA"
 
C++ Webinar "Why Should You Learn C++ in 2021-22?"
C++ Webinar "Why Should You Learn C++ in 2021-22?"C++ Webinar "Why Should You Learn C++ in 2021-22?"
C++ Webinar "Why Should You Learn C++ in 2021-22?"
 
GlobalLogic Test Automation Live Testing Session “Android Behind UI — Testing...
GlobalLogic Test Automation Live Testing Session “Android Behind UI — Testing...GlobalLogic Test Automation Live Testing Session “Android Behind UI — Testing...
GlobalLogic Test Automation Live Testing Session “Android Behind UI — Testing...
 
GlobalLogic Test Automation Online TechTalk “Test Driven Development as a Per...
GlobalLogic Test Automation Online TechTalk “Test Driven Development as a Per...GlobalLogic Test Automation Online TechTalk “Test Driven Development as a Per...
GlobalLogic Test Automation Online TechTalk “Test Driven Development as a Per...
 
GlobalLogic Azure TechTalk ONLINE “Marketing Data Lake in Azure”
GlobalLogic Azure TechTalk ONLINE “Marketing Data Lake in Azure”GlobalLogic Azure TechTalk ONLINE “Marketing Data Lake in Azure”
GlobalLogic Azure TechTalk ONLINE “Marketing Data Lake in Azure”
 
GlobalLogic Test Automation Online TechTalk “Playwright — A New Hope”
GlobalLogic Test Automation Online TechTalk “Playwright — A New Hope”GlobalLogic Test Automation Online TechTalk “Playwright — A New Hope”
GlobalLogic Test Automation Online TechTalk “Playwright — A New Hope”
 
Java Webinar #13 “Where Is My Development Zone?”
Java Webinar #13 “Where Is My Development Zone?”Java Webinar #13 “Where Is My Development Zone?”
Java Webinar #13 “Where Is My Development Zone?”
 
NET Webinar #1 "Is There a Life Outside the Entity Framework"
NET Webinar #1 "Is There a Life Outside the Entity Framework"NET Webinar #1 "Is There a Life Outside the Entity Framework"
NET Webinar #1 "Is There a Life Outside the Entity Framework"
 
Online TechTalk “Flutter Mobile Development”
Online TechTalk “Flutter Mobile Development”Online TechTalk “Flutter Mobile Development”
Online TechTalk “Flutter Mobile Development”
 
Online TechTalk  "Patterns in Embedded SW Design"
Online TechTalk  "Patterns in Embedded SW Design"Online TechTalk  "Patterns in Embedded SW Design"
Online TechTalk  "Patterns in Embedded SW Design"
 
Сloud Webinar #1 “Architecture of Highly Loaded Geo-Distributed Applications”
Сloud Webinar #1 “Architecture of Highly Loaded Geo-Distributed Applications”Сloud Webinar #1 “Architecture of Highly Loaded Geo-Distributed Applications”
Сloud Webinar #1 “Architecture of Highly Loaded Geo-Distributed Applications”
 

GlobalLogic С/C++/Embedded Live Coding Challenge. Basic graph algorithms