| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | |||||
| 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| 10 | 11 | 12 | 13 | 14 | 15 | 16 |
| 17 | 18 | 19 | 20 | 21 | 22 | 23 |
| 24 | 25 | 26 | 27 | 28 | 29 | 30 |
| 31 |
- 슬라이딩윈도우
- nlp
- graph
- binary Tree
- 파이썬
- BFS
- 리트코드
- 투포인터
- codeup
- dfs
- 생성형AI
- Python
- sql코테
- 알고리즘
- heap
- LeetCode
- 코드업
- two-pointer
- SQL
- 니트코드
- array
- GenAI
- 파이썬알고리즘
- stratascratch
- tree
- Stack
- Python3
- 릿코드
- Greedy
- GenerativeAI
- Today
- Total
목록dfs (19)
Tech for good
from collections import deque, defaultdictdef has_path(adjacency_dict, start, destination): # Write your code here if start == destination: return True graph = defaultdict(list, adjacency_dict) q = deque([start]) visited = set([start]) while q: curr = q.popleft() if curr == destination: return True for neighbor ..
class Solution: def numIslands(self, grid: List[List[str]]) -> int: n_rows, n_cols = len(grid), len(grid[0]) res = 0 visited = set() def dfs(r, c): visited.add((r,c)) neighbors = [(r-1, c), (r+1, c), (r, c-1), (r, c+1)] # check if visited or not for n_r, n_c in neighbors: if n_r in range(n_rows) and n_c in ..
class Solution: def validPath(self, n: int, edges: List[List[int]], source: int, destination: int) -> bool: # 1. Make a graph ## To figure out neighbor using hash-map ## 0 => [1,2] graph = defaultdict(list) for u, v in edges: graph[u].append(v) graph[v].append(u) # 2. BFS from source q = deque([source]) visited = se..
# Definition for a binary tree node.# class TreeNode:# def __init__(self, val=0, left=None, right=None):# self.val = val# self.left = left# self.right = rightclass Solution: def isSubtree(self, root: Optional[TreeNode], subRoot: Optional[TreeNode]) -> bool: if not root: return False return self.sameTree(root, subRoot) or self.isSubtree(root..
# Definition for a binary tree node.# class TreeNode:# def __init__(self, val=0, left=None, right=None):# self.val = val# self.left = left# self.right = rightclass Solution: def getAllElements(self, root1: Optional[TreeNode], root2: Optional[TreeNode]) -> List[int]: def helper(root): if not root: return [] return helper(r..
# Definition for a binary tree node.# class TreeNode:# def __init__(self, val=0, left=None, right=None):# self.val = val# self.left = left# self.right = rightclass Solution: def isBalanced(self, root: Optional[TreeNode]) -> bool: def check(node): if not node: return 0, True # height = 0, isBalanced = True lef..
# Definition for a binary tree node.# class TreeNode:# def __init__(self, val=0, left=None, right=None):# self.val = val# self.left = left# self.right = rightclass Solution: def diameterOfBinaryTree(self, root: Optional[TreeNode]) -> int: def helper(node): if not node: return 0, 0 left_h, left_d = helper(node...
Tree > Traversal 1. DFS => Recursion (using self; recursive) or Stack (iterative)Pre-order: Root -> Left -> RightIn-order: Left -> Root -> RightPost-order: Left -> Right -> Root# Definition for a binary tree node.# class TreeNode:# def __init__(self, val=0, left=None, right=None):# self.val = val# self.left = left# self.right = rightclass Solution: def inorderTrave..
# Definition for a binary tree node.# class TreeNode:# def __init__(self, val=0, left=None, right=None):# self.val = val# self.left = left# self.right = rightclass Solution: def invertTree(self, root: Optional[TreeNode]) -> Optional[TreeNode]: # Base case: decide where to stop if root is None: return None right = self.invertT..
1) Recursive DFSclass Solution: def validPath(self, n: int, edges: List[List[int]], source: int, destination: int) -> bool: if source == destination: return True # Step 1: Build the adjacency list graph = defaultdict(list) # defaultdict is a subclass of Python’s built-in dict that automatically creates a default value if a key is missing. for u, v in edg..