본문 바로가기

이진트리7

[대칭 트리]Leetcode Symmetric Tree Python 요즘에는 개발자들이 회사에 취업하기 위해서 사용한다는 리트코드 (leetcode) 사이트의 문제들을 풀어보고 있습니다. 이제 막 시작한 초보자라 힘든 점이 많아서 이렇게 글로 남겨서 복습하려고 합니다. 문제: Symmetric Tree 등급: EASY 오늘도 EASY 등급에 힘겨워하는 나... 우선, 이건 내가 생각해서 적은 코드가 아니다. 유튜브를 보고 아이디어를 받았다. # Definition for a binary tree node. # class TreeNode(object): # def __init__(self, val=0, left=None, right=None): # self.val = val # self.left = left # self.right = right class Solution(.. 2022. 1. 22.
[Binary Tree / 이진트리] Solve Tree Problems Recursively / Maximum Depth of Binary Tree 요즘에는 개발자들이 회사에 취업하기 위해서 사용한다는 리트코드 (leetcode) 사이트의 문제들을 풀어보고 있습니다. 이제 막 시작한 초보자라 힘든 점이 많아서 이렇게 글로 남겨서 복습하려고 합니다. 문제: 오늘은 문제가 아니라, Recursion lesson 등급: --- 두가지 방법, 솔루션이 주어진다. 첫번째는, "top-down" solution. 이렇게 definition이 적혀있다: "Top-down" means that in each recursive call, we will visit the node first to come up with some values, and pass these values to its children when calling the function recursi.. 2022. 1. 20.
Leetcode - Binary Tree Postorder Traversal(후위 순회) Python 파이썬 요즘에는 개발자들이 회사에 취업하기 위해서 사용한다는 리트코드 (leetcode) 사이트의 문제들을 풀어보고 있습니다. 이제 막 시작한 초보자라 힘든 점이 많아서 이렇게 글로 남겨서 복습하려고 합니다. 2022.01.17 - [Binary Tree / 이진 트리] Leetcode - Binary Tree Inorder Traversal Python 파이썬 문제: Binary Tree Postorder Traversal 등급: EASY 너무나도 많이 고민했다. 어제 적은 코드에서 무엇을 바꾸면, root를 자연스럽게 마지막에 더할수 있을까? 고민했다. (어제 2번 코드 참고) 처음에 들은 생각은, while loop에 if 식을 하나 넣으면 되지 않을까 생각했다. 이 방식은 되지 않았다. if를 넣는다면,.. 2022. 1. 19.
leetcode: Binary Tree Level Order Traversal (python / 파이썬) 요즘에는 개발자들이 회사에 취업하기 위해서 사용한다는 리트코드 (leetcode) 사이트의 문제들을 풀어보고 있습니다. 이제 막 시작한 초보자라 힘든 점이 많아서 이렇게 글로 남겨서 복습하려고 합니다. 문제: Binary Tree Level Order Traversal 등급: MEDIUM 어떻게 하면 각 level 별로 리스트를 출력할 수 있을까... 한 30분간 고민했던 것 같다. 그런데 생각을 못했다. ㅠㅠ 우선 기존의 preorder, postorder 등은 잘 할 수 있을 거라고 생각된다. 그런데, level 별 리스트를 어떻게 하지? count을 사용해서 각 level의 count를 하나씩 늘려가면서 해볼까 생각해봤는데 그 level를 언제 +1 하게 만들 것인가라는 질문에 대답을 하지 못하였다.. 2022. 1. 18.
leetcode: Binary Tree Level Order Traversal (python / 파이썬) 요즘에는 개발자들이 회사에 취업하기 위해서 사용한다는 리트코드 (leetcode) 사이트의 문제들을 풀어보고 있습니다. 이제 막 시작한 초보자라 힘든 점이 많아서 이렇게 글로 남겨서 복습하려고 합니다. 문제: Binary Tree Level Order Traversal 등급: MEDIUM 어떻게 하면 각 level 별로 리스트를 출력할 수 있을까... 한 30분간 고민했던 것 같다. 그런데 생각을 못했다. ㅠㅠ 우선 기존의 preorder, postorder 등은 잘 할 수 있을 거라고 생각된다. 그런데, level 별 리스트를 어떻게 하지? count을 사용해서 각 level의 count를 하나씩 늘려가면서 해볼까 생각해봤는데 그 level를 언제 +1 하게 만들 것인가라는 질문에 대답을 하지 못하였다.. 2022. 1. 18.
[Binary Tree / 이진 트리] Leetcode - Binary Tree Inorder Traversal Python 파이썬 요즘에는 개발자들이 회사에 취업하기 위해서 사용한다는 리트코드 (leetcode) 사이트의 문제들을 풀어보고 있습니다. 이제 막 시작한 초보자라 힘든 점이 많아서 이렇게 글로 남겨서 복습하려고 합니다. 어제 Binary Search와 이어집니다. 2022.01.16 - [코딩 공부] - [Binary Tree / 이진트리] Leetcode - Binary Tree Preorder Traversal Python 파이썬 문제: Binary Tree Inorder Traversal 등급: EASY (분명 easy인데... easy인데..!!) 내용: "Given the root of a binary tree, return the inorder traversal of its nodes' values." clas.. 2022. 1. 17.
[Binary Tree / 이진 트리] Leetcode - Binary Tree Preorder Traversal Python 파이썬 요즘에는 개발자들이 회사에 취업하기 위해서 사용한다는 리트코드 (leetcode) 사이트의 문제들을 풀어보고 있습니다. 이제 막 시작한 초보자라 힘든 점이 많아서 이렇게 글로 남겨서 복습하려고 합니다. 주제: Binary Tree - Traverse a Tree 문제: Binary Tree Preorder Traversal 등급: EASY 내용: "Given the root of a binary tree, return the preorder traversal of its nodes' values." root 노드가 주어진 이진트리이다. 내가 한 것은 recursive method이다. 도대체 iterative method으로 어떻게 풀지는 몰랐다. 솔직히 recursive도 이해 완전히 한 것은 아니다... 2022. 1. 16.