본문 바로가기
반응형

Algorithms119

[알고리즘] 전위, 중위, 후위 순회 (Traverse) 포인트 트리에서 자료를 순회하는 방법은 전위, 중위, 후위 순회가 있습니다. level-order로 BFS 와 같이 움직이는 것도 또한, 존재합니다. Binary Tree Inorder Traversal Binary Tree Preorder Traversal Binary Tree Postorder Traversal 문제를 풀어보았습니다. 🧶문서는 항상 수정될 수 있습니다. 비판은 환영합니다. python inorder traverse - 중위 순회 # Definition for a binary tree node. # class TreeNode: # def __init__(self, val=0, left=None, right=None): # self.val = val # self.left = left # .. 2021. 4. 5.
[알고리즘] 드래곤 커브 포인트 규칙을 찾아야 하는 문제입니다. 다른 방식들도 많은 것 같은데 저는 이렇게 푼 게 편했던 덧 같습니다. 드래곤 커브가 움직이는 방향은 각 이동 방향에서 뒤에서부터 %4 +1 가지고 있습니다. 이러한 방식으로 for loop를 돌면 간단히 풀리는 과정이지만 이 과정을 찾아내는 게 까다로웠던 것 같습니다. 🧶문서는 항상 수정될 수 있습니다. 비판은 환영합니다. ㅋ python dx = [1, 0, -1, 0] dy = [0, -1, 0, 1] n = int(input()) data = [[0] * 101 for _ in range(101)] for _ in range(n): x, y, d, g = map(int, input().split()) data[x][y] = 1 dirs = [d] for _ .. 2021. 4. 3.
[알고리즘] 사다리 조작 포인트 조합을 이용하여 원하는 값을 얻을 수 있는가? 문제의 조건은 자기가 시작한 곳에서 끝을 낼 수 있는가? 입니다. 또한 조합을 이용해서 이곳을 지나도 되는지 아닌지를 확인하면서 사다리를 이동하는 것을 구현할 수 있는가? 를 보는 것 같습니다. 🧶문서는 항상 수정 될 수 있습니다. 비판은 환영합니다. python def move() -> int: for row in range(n): pointer = row for col in range(m): if data[pointer][col]: # pointer += 1 elif data[pointer - 1][col]: pointer -= 1 if row != pointer: return 0 return 1 def go(cnt: int, index: int,.. 2021. 4. 1.
[알고리즘] Palindrome Linked List 포인트 LinkedList 를 사용하는 문제 회문은 검사하는 방법은 뒤집어서 같은지 아닌지를 검사한다. 🧶문서는 항상 수정 될 수 있습니다. 비판은 환영합니다. python # Definition for singly-linked list. # class ListNode: # def __init__(self, val=0, next=None): # self.val = val # self.next = next class Solution: def isPalindrome(self, head: ListNode) -> bool: temp = '' while head != None: val = head.val temp += str(val) head = head.next return True if temp[::] ==t.. 2021. 4. 1.
반응형