From 90bfc3b1dfecd1245510b4146b5f365bdc88906a Mon Sep 17 00:00:00 2001
From: Damon <126731021+damon314159@users.noreply.github.com>
Date: Fri, 1 Nov 2024 19:48:10 +0000
Subject: [PATCH 01/13] feat(CS): Add new graphs project
---
javascript/computer_science/project_graph.md | 138 +++++++++++++++++++
1 file changed, 138 insertions(+)
create mode 100644 javascript/computer_science/project_graph.md
diff --git a/javascript/computer_science/project_graph.md b/javascript/computer_science/project_graph.md
new file mode 100644
index 00000000000..0e617406087
--- /dev/null
+++ b/javascript/computer_science/project_graph.md
@@ -0,0 +1,138 @@
+### Introduction
+
+A graph is a way to represent connections between things. Think of it like drawing points (called vertices or nodes) and connecting them with lines (called edges). Graphs have a wide variety of applications, and we can use them to model complex relationships. For example:
+
+- In a social network, each person is a vertex, and friendships are edges
+- In a road map, cities are vertices, and roads between them are edges
+- In a computer network, devices are vertices, and connections between computers are edges
+
+
+
+### Why Use Graphs?
+
+Graphs are incredibly useful for modeling relationships and connections. They help us solve real-world problems like:
+
+1. Finding the shortest route between two cities.
+1. Suggesting friends on social media.
+1. Planning computer network layouts for reliability and speed.
+1. Analysing and managing dependencies when bundling code.
+1. Ranking pages based on connections to similar pages by search engines.
+
+There are a handful of types of graphs used to solve this wide variety of problems. Graphs can be either *directed* or *undirected*, and can be either *weighted* or *unweighted*. A quick explanation of these terms:
+
+- Directed: Connections go only one way (if A connects to B, B doesn't necessarily connect to A). Dependencies in our code are directed, since module A importing B means that module B cannot import module A without introducing circular dependencies.
+- Undirected: Connections go both ways (if A connects to B, B connects to A). A computer network is likely to be undirected, since connections between any two computers are mutual.
+- Weighted: Connections have some numeric weight that specifies something about them. A road map is likely to be weighted, where the weights are the distances between the cities. This allows you to calculate the distance of your journey by adding the weights of the roads along the way.
+- Unweighted: All connections are equal - no one connection is more important than any other. A social network is likely to be unweighted, since connections signify only that a friendship exists.
+
+In this project, we will be using the simplest type of graph, an undirected, unweighted graph.
+
+### Representing a Graph
+
+In our code, there are several ways we could represent a graph. Two of the most common representations include *adjacency lists* and *adjacency matrices*. Read this article about [graphs and their representations](https://www.geeksforgeeks.org/graph-and-its-representations/) from GeeksforGeeks to familiarise yourself with these ideas. They have some example code, but don't pay too much attention to this, as it's a little different to the code we'll be writing in this project.
+
+In this project, we'll be using an adjacency matrix to represent the graph.
+
+### Assignment
+
+
+
+You'll build an undirected, unweighted graph implementation using an adjacency matrix. The focus is on understanding how to store and manipulate graph relationships. For simplicity, you may assume that the values of each vertex are unique in the graph.
+
+Build a `Graph` class (or factory) to represent your graph. For now it should only include storage for a list of `vertices` and a `matrix` (or 2D array) to serve as the adjacency matrix. Then proceed to create the following methods:
+
+1. `addVertex(value)`: Adds a new value to the list of vertices and expands the matrix
+
+ **Hint:** The adjacency matrix should always be of size `n × n` where `n` is the number of vertices.
+
+1. `addEdge(value1, value2)`: Creates an edge between two vertices
+
+ **Tip:** If you would like to visualize your graph, here is a `printMatrix()` function that will `console.log` your graph's adjacency matrix in a structured format. This function will expect to receive the graph instance as a parameter.
+
+ ```javascript
+ function printMatrix(graph) {
+ const row0 = ` ${graph.vertices.join(" ")}`;
+ const otherRows = graph.vertices.map(
+ (_, i) => `${graph.vertices[i]} ${graph.matrix[i].join(" ")}`
+ );
+ console.log([row0, ...otherRows].join("\n"));
+ }
+ ```
+
+1. `hasVertex(value)`: Checks if a vertex exists.
+
+1. `areAdjacent(value1, value2)`: Checks if two given vertices are adjacent. This means that they are connected by an edge.
+
+1. `removeVertex(value)`: Removes a vertex and shrinks the matrix. Any edges that were connected to that vertex are now gone.
+
+1. `removeEdge(value1, value2)`: Removes an edge between two vertices, if one exists.
+
+1. `getOrder()`: Gets the order of the graph. This is the number of vertices in the graph.
+
+1. `getSize()`: Gets the size of the graph. This is the number of edges in the graph.
+
+1. `getDegree(value)`: Gets the degree of a given vertex. This is the number of edges that are connected to that vertex.
+
+1. `getNeighbors(value)`: Lists all vertices that are adjacent to a given vertex.
+
+1. `getCommonNeighbors(value1, value2)`: Lists all vertices that are adjacent to both given vertices.
+
+#### Test Your Graph
+
+1. Create a new JavaScript file. Import both your `Graph` class or factory and the `printMatrix` function.
+
+1. Create a new instance of your graph.
+
+ ```javascript
+ const graph = new Graph() // or Graph() if using a factory
+ ```
+
+1. Populate your graph using the `addVertex(value)` and `addEdge(value1, value2)` methods by copying the following:
+
+ ```javascript
+ // Add some vertices
+ graph.addVertex("A")
+ graph.addVertex("B")
+ graph.addVertex("C")
+ graph.addVertex("D")
+
+ // Add some edges
+ graph.addEdge("A", "B")
+ graph.addEdge("B", "C")
+ graph.addEdge("A", "C")
+ graph.addEdge("C", "D")
+ ```
+
+ **Note:** We're using letters as the vertices here, but they could be anything we wanted. We could be using strings, numbers, or even a custom `Vertex` class or factory.
+
+1. Now you have your graph populated, try out a few of the methods by copying the following:
+
+ ```javascript
+ printMatrix(graph)
+ // The matrix should now look like this:
+ // A B C D
+ // A 0 1 1 0
+ // B 1 0 1 0
+ // C 1 1 0 1
+ // D 0 0 1 0
+
+ console.log(graph.getOrder()) // Should log 4
+ console.log(graph.getSize()) // Should log 4
+
+ graph.removeEdge('C', 'B')
+ console.log(graph.getSize()) // Should log 3
+
+ console.log(graph.getNeighbors('A')) // Should log ['B', 'C']
+ console.log(graph.getCommonNeighbors('A', 'D')) // Should log ['C']
+ console.log(graph.getCommonNeighbors('A', 'B')) // Should log []
+ ```
+
+1. Lastly, experiment with different combinations of all the methods you have in your graph! Make sure everything is working as you expect it to.
+
+
+
+### Additional resources
+
+This section contains helpful links to related content. It isn't required, so consider it supplemental.
+
+- It looks like this lesson doesn't have any additional resources yet. Help us expand this section by contributing to our curriculum.
From 31cc83543dade39c43316f8bed1fb09df472a4b3 Mon Sep 17 00:00:00 2001
From: Damon <126731021+damon314159@users.noreply.github.com>
Date: Wed, 4 Jun 2025 17:35:38 +0100
Subject: [PATCH 02/13] Expand on reasoning behind representation choice
---
javascript/computer_science/project_graph.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/javascript/computer_science/project_graph.md b/javascript/computer_science/project_graph.md
index 0e617406087..55dd973e3b1 100644
--- a/javascript/computer_science/project_graph.md
+++ b/javascript/computer_science/project_graph.md
@@ -31,7 +31,7 @@ In this project, we will be using the simplest type of graph, an undirected, unw
In our code, there are several ways we could represent a graph. Two of the most common representations include *adjacency lists* and *adjacency matrices*. Read this article about [graphs and their representations](https://www.geeksforgeeks.org/graph-and-its-representations/) from GeeksforGeeks to familiarise yourself with these ideas. They have some example code, but don't pay too much attention to this, as it's a little different to the code we'll be writing in this project.
-In this project, we'll be using an adjacency matrix to represent the graph.
+In this project, we'll be using an adjacency matrix to represent the graph. We've picked this style of graph because it gives you great practice at adding and removing vertices, and making sure everything stays in sync. However, in future projects (like Knight Travails) you may wish to go for an adjacency list approach, since you have a bit less manual work to do keeping the state in check.
### Assignment
From 444c46f4e139392328316f54687daf237dbe4abd Mon Sep 17 00:00:00 2001
From: Scriabin Enjoyer <197675111+scriabin-enjoyer@users.noreply.github.com>
Date: Tue, 20 Jan 2026 02:56:57 -0500
Subject: [PATCH 03/13] Graph Project: Add images
---
.../computer_science/project_graph/00.png | Bin 0 -> 59213 bytes
ruby/computer_science/project_graph/00.png | Bin 0 -> 59213 bytes
2 files changed, 0 insertions(+), 0 deletions(-)
create mode 100644 javascript/computer_science/project_graph/00.png
create mode 100644 ruby/computer_science/project_graph/00.png
diff --git a/javascript/computer_science/project_graph/00.png b/javascript/computer_science/project_graph/00.png
new file mode 100644
index 0000000000000000000000000000000000000000..7d462303fd8c72b57a324377cd62f24d2587a79c
GIT binary patch
literal 59213
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