Click here to run the code.
const pascalsTriangle = (level) => {
if(level > 25 || level < 2) throw new Error('Chose a number between 2 and 25');
let initialArray = [1];
Click here to run the code.
const pascalsTriangle = (level) => {
if(level > 25 || level < 2) throw new Error('Chose a number between 2 and 25');
let initialArray = [1];
class Node { | |
constructor(value) { | |
this.value = value; | |
this.left = null; | |
this.right = null; | |
} | |
} | |
class BST { | |
constructor(value) { |
doesPathExist(firstNode, secondNode){ | |
// we will approach this BFS way | |
let path = []; | |
let visited = this.createVisitedObject(); | |
let q = []; | |
visited[firstNode] = true; | |
q.push(firstNode); | |
while(q.length){ | |
let node = q.pop(); | |
path.push(node); |
dfs(startingNode){ | |
let visited = this.createVisitedObject(); | |
this.dfsHelper(startingNode, visited); | |
} | |
dfsHelper(startingNode, visited){ | |
visited[startingNode] = true; | |
console.log(startingNode); | |
let arr = this.AdjList.get(startingNode); |
// HELPER FUNCTION | |
createVisitedObject(){ | |
let arr = {}; | |
for(let key of this.AdjList.keys()){ | |
arr[key] = false; | |
} | |
return arr; | |
} | |
// Breadth First Search |
class Graph { | |
constructor() { | |
this.AdjList = new Map(); | |
} | |
addVertex(vertex) { | |
if (!this.AdjList.has(vertex)) { | |
this.AdjList.set(vertex, []); | |
} else { | |
throw 'Already Exist!!!'; |
class Graph { | |
constructor() { | |
this.AdjList = new Map(); | |
} | |
// BASIC METHODS | |
// addVertex(vertex) {} | |
// addEdge(vertex, node) {} | |
// print() {} | |
} |