diff --git a/content/roadmaps/103-computer-science/content/102-data-structures/106-graph/100-directed-graph.md b/content/roadmaps/103-computer-science/content/102-data-structures/106-graph/100-directed-graph.md index bc774798e..1074b7dc6 100644 --- a/content/roadmaps/103-computer-science/content/102-data-structures/106-graph/100-directed-graph.md +++ b/content/roadmaps/103-computer-science/content/102-data-structures/106-graph/100-directed-graph.md @@ -1 +1,6 @@ -# Directed graph \ No newline at end of file +# Directed Graph + +A directed graph is graph, i.e., a set of objects (called vertices or nodes) that are connected together, where all the edges are directed from one vertex to another. A directed graph is sometimes called a digraph or a directed network. In contrast, a graph where the edges are bidirectional is called an undirected graph. + +Free Content +Directed Graph diff --git a/content/roadmaps/103-computer-science/content/102-data-structures/106-graph/101-undirected-graph.md b/content/roadmaps/103-computer-science/content/102-data-structures/106-graph/101-undirected-graph.md index f54cd44aa..3bf335de0 100644 --- a/content/roadmaps/103-computer-science/content/102-data-structures/106-graph/101-undirected-graph.md +++ b/content/roadmaps/103-computer-science/content/102-data-structures/106-graph/101-undirected-graph.md @@ -1 +1,6 @@ -# Undirected graph \ No newline at end of file +# Undirected Graph + +An undirected graph is graph, i.e., a set of objects (called vertices or nodes) that are connected together, where all the edges are bidirectional. An undirected graph is sometimes called an undirected network. In contrast, a graph where the edges point in a direction is called a directed graph. + +Free Content +Undirected Graph diff --git a/content/roadmaps/103-computer-science/content/102-data-structures/106-graph/102-spanning-tree.md b/content/roadmaps/103-computer-science/content/102-data-structures/106-graph/102-spanning-tree.md index a25933927..36c34592e 100644 --- a/content/roadmaps/103-computer-science/content/102-data-structures/106-graph/102-spanning-tree.md +++ b/content/roadmaps/103-computer-science/content/102-data-structures/106-graph/102-spanning-tree.md @@ -1 +1,9 @@ -# Spanning tree \ No newline at end of file +# Spanning Tree + +A spanning tree is a subset of Graph G, which has all the vertices covered with minimum possible number of edges. Hence, a spanning tree does not have cycles and it cannot be disconnected.. + +Free Content +Spanning Tree +CSE373 2020 - Lecture 13 - Minimum Spanning Trees +CSE373 2020 - Lecture 14 - Minimum Spanning Trees (con't) +Greedy Algorithms: Minimum Spanning Tree diff --git a/content/roadmaps/103-computer-science/content/102-data-structures/106-graph/103-graph-representation.md b/content/roadmaps/103-computer-science/content/102-data-structures/106-graph/103-graph-representation.md index b28f33b5a..a9aa2737f 100644 --- a/content/roadmaps/103-computer-science/content/102-data-structures/106-graph/103-graph-representation.md +++ b/content/roadmaps/103-computer-science/content/102-data-structures/106-graph/103-graph-representation.md @@ -1 +1,11 @@ -# Graph representation \ No newline at end of file +# Graph Representation + +A graph can either be represented as an adjacency matrix or an adjacency list. + +The adjacency matrix is a 2D array of size `V x V` where `V` is the number of vertices in a graph. Let the 2D array be `adj[][]`, a slot `adj[i][j] = 1` indicates that there is an edge from vertex `i` to vertex `j`. + +Adjacency list is an array of vectors. Size of the array is equal to the number of vertices. Let the array be `array[]`. An entry `array[i]` represents the list of vertices adjacent to the ith vertex. This representation can also be used to represent a weighted graph. The weights of edges can be represented as lists of pairs. + +Free Content +Adjacency Matrix - Graph Representation +Adjacency List - Graph Representation diff --git a/content/roadmaps/103-computer-science/content/102-data-structures/106-graph/readme.md b/content/roadmaps/103-computer-science/content/102-data-structures/106-graph/readme.md index 4bb05d4a5..291962fca 100644 --- a/content/roadmaps/103-computer-science/content/102-data-structures/106-graph/readme.md +++ b/content/roadmaps/103-computer-science/content/102-data-structures/106-graph/readme.md @@ -1 +1,16 @@ -# Graph \ No newline at end of file +# Graph + +Graphs in data structures are non-linear data structures made up of a finite number of nodes or vertices and the edges that connect them. Graphs in data structures are used to address real-world problems in which it represents the problem area as a network like telephone networks, circuit networks, and social networks. + +Free Content +Graph Data Structure +Graph Data Structure | Illustrated Data Structures +CSE373 2020 - Lecture 10 - Graph Data Structures +CSE373 2020 - Lecture 11 - Graph Traversal +CSE373 2020 - Lecture 12 - Depth First Search +CSE373 2020 - Lecture 13 - Minimum Spanning Trees +CSE373 2020 - Lecture 14 - Minimum Spanning Trees (con't) +CSE373 2020 - Lecture 15 - Graph Algorithms (con't 2) + +6.006 Single-Source Shortest Paths Problem + diff --git a/content/roadmaps/103-computer-science/content/104-common-algorithms/102-graph-algorithms/102-bellman-fords-algorithm.md b/content/roadmaps/103-computer-science/content/104-common-algorithms/102-graph-algorithms/102-bellman-fords-algorithm.md index bad8b12e4..2736c854f 100644 --- a/content/roadmaps/103-computer-science/content/104-common-algorithms/102-graph-algorithms/102-bellman-fords-algorithm.md +++ b/content/roadmaps/103-computer-science/content/104-common-algorithms/102-graph-algorithms/102-bellman-fords-algorithm.md @@ -1 +1,4 @@ -# Bellman fords algorithm \ No newline at end of file +# Bellman Ford's Algorithm + +Free Content +Bellman-Ford - MIT diff --git a/content/roadmaps/103-computer-science/content/104-common-algorithms/102-graph-algorithms/103-dijkstras-algorithm.md b/content/roadmaps/103-computer-science/content/104-common-algorithms/102-graph-algorithms/103-dijkstras-algorithm.md index cced68fc7..af7d2d83b 100644 --- a/content/roadmaps/103-computer-science/content/104-common-algorithms/102-graph-algorithms/103-dijkstras-algorithm.md +++ b/content/roadmaps/103-computer-science/content/104-common-algorithms/102-graph-algorithms/103-dijkstras-algorithm.md @@ -1 +1,5 @@ -# Dijkstras algorithm \ No newline at end of file +# Dijkstra's Algorithm + + +Free Content +Dijkstra's Algorithm - MIT diff --git a/content/roadmaps/103-computer-science/content/104-common-algorithms/102-graph-algorithms/readme.md b/content/roadmaps/103-computer-science/content/104-common-algorithms/102-graph-algorithms/readme.md index 0610e820f..f451ec6df 100644 --- a/content/roadmaps/103-computer-science/content/104-common-algorithms/102-graph-algorithms/readme.md +++ b/content/roadmaps/103-computer-science/content/104-common-algorithms/102-graph-algorithms/readme.md @@ -1 +1,11 @@ -# Graph algorithms \ No newline at end of file +# Graph Algorithms + +Free Content +Graph Algorithms I - Topological Sorting, Minimum Spanning Trees, Prim's Algorithm - Lecture 6 +Graph Algorithms II - DFS, BFS, Kruskal's Algorithm, Union Find Data Structure - Lecture 7 +Graph Algorithms III: Shortest Path - Lecture 8 +Graph Alg. IV: Intro to geometric algorithms - Lecture 9 +Strongly Connected Components Kosaraju's Algorithm Graph Algorithm +Shortest Path Algorithms (playlist) in 16 minutes +Minimum Spanning Trees (playlist) in 4 minutes +Algorithms on Graphs - Coursera diff --git a/content/roadmaps/103-computer-science/content/104-common-algorithms/104-greedy-algorithms/100-dijkstras-algorithm.md b/content/roadmaps/103-computer-science/content/104-common-algorithms/104-greedy-algorithms/100-dijkstras-algorithm.md index cced68fc7..78aa1f7db 100644 --- a/content/roadmaps/103-computer-science/content/104-common-algorithms/104-greedy-algorithms/100-dijkstras-algorithm.md +++ b/content/roadmaps/103-computer-science/content/104-common-algorithms/104-greedy-algorithms/100-dijkstras-algorithm.md @@ -1 +1,6 @@ -# Dijkstras algorithm \ No newline at end of file +# Dijkstra's Algorithm + + +Free Content +Dijkstra's Algorithm - MIT +Speeding Up Dijkstra's Algorithm - MIT