본문 바로가기
반응형

Software Development/Leetcode33

릿코드 98번 Validate Binary Search Tree 안녕하세요! 이번에는 릿코드 98번 문제를 들고 왔습니다. 이번 문제는 주어진 트리가 BST, 즉 이진탐색트리 인지를 검사하는 함수를 만드는 문제입니다. 그럼 바로 파이썬으로 풀어보도록 하겠습니다. 문제설명 이번 문제는 일단 BST(Binary Search Tree)에 대한 이해를 먼저 하셔야 합니다. 이진탐색트리는 다음과 같은 특징이 있습니다. 자기자신자기 자신 노드의 왼쪽 하위 트리의 모든 노드의 값들은 자기 자신의 값보다 작습니다(작거나 같지 않고 작아야 함). 자기 자신 노드의 오른쪽 하위 트리의 모든 노드의 값들은 자기 자신의 값보다 큽니다(크거나 같지 않고 커야 함). 중복된 노드값이 존재하지 않습니다. 예제 1번을 살펴보겠습니다. 루트노드인 2 왼쪽자식노드에는 1, 오른쪽자식노드에는 3으로 .. 2023. 2. 18.
릿코드 102 Binary Tree Level Order Traversal 안녕하세요! 오늘은 릿코드 102번 문제 레벨별 순회하기를 파이썬을 이용해서 풀어보겠습니다. 이번 문제는 중간 난이도로 트리구조와 데크(deque) 구조를 이해하는 데에 도움이 많이 됩니다. 문제설명 위와 같은 트리가 인풋으로 들어올 때, 아래와 같이 리턴되어지는 함수를 구현하는 겁니다. 위에서부터 레벨 1, 2, 3이라고 했을 때, [3], [9,20], [15,7]이 됩니다. Input: root = [3,9,20,null,null,15,7] Output: [[3],[9,20],[15,7]] 이번문제는 레벨이 아래로 내려가면서 왼쪽부터 오른쪽으로 순차적으로 리스트에 추가해준 값을 전체 리스트에 추가해줘야 하기 때문에 데크(deque)를 이용해서 풀 수 있습니다. 문제풀이 데크(deque) 이용 풀이 .. 2023. 2. 18.
릿코드 572번 Subtree of Another Tree 문제 풀이 안녕하세요! 오늘은 leetcode 572 문제를 파이썬을 이용해서 풀어보겠습니다. 이번 문제는 아래 링크(100번 문제)를 먼저 푸시고 푸신다면 이해가 잘 되실 수 있으니 혹시 필요하신 분은 100번 문제부터 풀고 오시는 걸 추천드립니다. 릿코드 100번 Same Tree 문제 풀이 릿코드 100번 Same Tree 문제 풀이 안녕하세요! 오늘은 릿코드 100번 문제인 같은 트리인지 알아보는 함수를 구현하는 문제를 풀어보겠습니다. 이번문제 역시 트리문제기 때문에 아래포스팅을 통해 트리의 특성을 한번 살펴보시 tystori.tistory.com 문제설명 해당 문제는 두 개의 트리구조 파라미터가 들어왔을 때, 두 번째 인자로 들어온 트리가 첫 번째 인자로 들어온 트리의 섭트리 인지 판단하는 문제입니다. 위.. 2023. 2. 13.
릿코드 100번 Same Tree 문제 풀이 안녕하세요! 오늘은 릿코드 100번 문제인 같은 트리인지 알아보는 함수를 구현하는 문제를 풀어보겠습니다. 이번문제 역시 트리문제기 때문에 아래포스팅을 통해 트리의 특성을 한번 살펴보시고 오시기를 추천드립니다. 릿코드 226 Invert Binary Tree 파이썬 풀이, 바이너리 트리 총정리! 릿코드 226 Invert Binary Tree 파이썬 풀이, 바이너리 트리 총정리! 안녕하세요! 오늘은 Leetcode 226번 문제인 바이너리 트리를 풀어보겠습니다. 바이너리 트리를 먼저 알아야 풀 수 있으니 바이너리 트리에 대해서 먼저 알아보고 Invert Binary Tree 문제를 풀어보도록 tystori.tistory.com 그럼 바로 문제를 풀어보도록 하겠습니다. Same Tree 문제설명 아래 사진처.. 2023. 2. 10.
릿코드 104번 문제 Maximum Depth of Binary Tree 풀이 안녕하세요! 오늘은 leetcode 104 트리의 최대깊이 찾는 문제를 풀어보겠습니다. 자바스크립트로 문제를 풀어오다가 이번주부터 파이썬으로 문제를 풀고 있습니다. 트리에 관해서 정확히 모르신다면 아래 링크를 확인해서 바이너리 트리(이진트리)를 잘 알아보시고 오시면 도움이 많이 될 것입니다. https://tystori.tistory.com/48 릿코드 226 Invert Binary Tree 파이썬 풀이, 바이너리 트리 총정리! 안녕하세요! 오늘은 Leetcode 226번 문제인 바이너리 트리를 풀어보겠습니다. 바이너리 트리를 먼저 알아야 풀 수 있으니 바이너리 트리에 대해서 먼저 알아보고 Invert Binary Tree 문제를 풀어보도록 tystori.tistory.com 그럼 본격적으로 문제 설명.. 2023. 2. 9.
릿코드 226 Invert Binary Tree 파이썬 풀이, 바이너리 트리 총정리! 안녕하세요! 오늘은 Leetcode 226번 문제인 바이너리 트리를 풀어보겠습니다. 바이너리 트리를 먼저 알아야 풀 수 있으니 바이너리 트리에 대해서 먼저 알아보고 Invert Binary Tree 문제를 풀어보도록 하겠습니다. 바이너리 트리란? 바이너리 트리란 한국말로 이진트리입니다. 이진트리는 각각의 노드가 최대 2개의 자식노드를 가지는 트리 구조입니다. 바이너리 트리에도 여러 가지 세부사항으로 나뉘는데요. 아래 목록처럼 총 6개의 종류가 있습니다. 바이너리 트리의 종류 루트 이진 트리(Rooted binary tree): 하나의 루트 노드를 가지며 모든 노드가 최대 두 개의 자식 노드를 가집니다. 일반적인 바이너리 트리의 정의입니다. 정 이진 트리(Full binary tree): 모든 노드가 0개.. 2023. 2. 9.
반응형