Skip to content

Instantly share code, notes, and snippets.

View kk-r's full-sized avatar
:bowtie:
Focusing

Krishnakumar kk-r

:bowtie:
Focusing
View GitHub Profile
@kk-r
kk-r / backtracking_template.py
Created August 11, 2021 12:33 — forked from RuolinZheng08/backtracking_template.py
[Algo] Backtracking Template & N-Queens Solution
def is_valid_state(state):
# check if it is a valid solution
return True
def get_candidates(state):
return []
def search(state, solutions):
if is_valid_state(state):
solutions.append(state.copy())
@kk-r
kk-r / tree_traversal_template.py
Created August 11, 2021 12:33 — forked from RuolinZheng08/tree_traversal_template.py
[Algo] Tree Traversal Template
# DFS
def preorder(self, root):
if not root:
return []
ret = []
stack = [root]
while stack:
node = stack.pop()
ret.append(node.val)
if node.right:
@kk-r
kk-r / graph_traversal_template.py
Created August 11, 2021 12:33 — forked from RuolinZheng08/graph_traversal_template.py
[Algo] Graph Traversal Template
# Iterative
def dfs(graph, start):
visited, stack = set(), [start]
while stack:
node = stack.pop()
visited.add(node)
for neighbor in graph[node]:
if not neighbor in visited:
stack.append(neighbor)
return visited