전체 글

"Reflections and Growth Through Records" 회고와 기록을 통한 성장으로
파이썬으로 배우는 알고리즘 책을 공부하며 풀었던 LeetCode문제들을 재정리해보자. # 문제 설명 21번 Merge Two Sorted List 는 연결 리스트를 뒤집는 문제이다. 위 문제는 혼자 풀려고 해보았지만, 푸는 도중에 꼬이고 어떤식으로 풀어야할지 전혀 감이 잡히지 않아 책 풀이를 참고하였다. 이 문제는 책 풀이를 보아도 쉽게 이해가 되지 않아서 이해하는데 꽤 걸렸다. # 풀이방법 1 - 재귀 구조로 연결 (책 풀이) # Definition for singly-linked list. # class ListNode: # def __init__(self, val=0, next=None): # self.val = val # self.next = next class Solution: def merge..
파이썬으로 배우는 알고리즘 책을 공부하며 풀었던 LeetCode문제들을 재정리해보자. # 문제 설명 92번 Reverse Linked List II 는 인덱스 m에서 n까지를 역순으로 만드는 문제이다. # 풀이방법 1 - 재귀 함수 이용하여 reverse (내 풀이) # Definition for singly-linked list. # class ListNode: # def __init__(self, val=0, next=None): # self.val = val # self.next = next class Solution: def reverseBetween(self, head: Optional[ListNode], left: int, right: int) -> Optional[ListNode]: # re..
파이썬으로 배우는 알고리즘 책을 공부하며 풀었던 LeetCode문제들을 재정리해보자. # 문제 설명 328번 Odd Even Linked List는 입력받은 연결 리스트를 홀수 번째 노드 다음에 짝수 번째 노드가 오도록 재구성하는 문제이다. # 풀이방법 1 - 연결리스트 값을 리스트로 저장 후, 연결리스트로 변환 (내 풀이) # Definition for singly-linked list. # class ListNode: # def __init__(self, val=0, next=None): # self.val = val # self.next = next class Solution: def oddEvenList(self, head: Optional[ListNode]) -> Optional[ListNode..
파이썬으로 배우는 알고리즘 책을 공부하며 풀었던 LeetCode문제들을 재정리해보자. # 문제 설명 24번 Swap Nodes in Pairs는 입력받은 연결 리스트를 페어단위로 스왑하는 문제이다. 위 문제는 혼자 풀려고 해보았지만, 푸는 도중에 꼬이고 어떤식으로 풀어야할지 전혀 감이 잡히지 않아 책 풀이를 참고하였다. 책 풀이 코드를 이해하며 작성하는 시간을 가졌다. # 풀이방법 1 - 반복 구조로 스왑 (책 풀이 참고) # Definition for singly-linked list. # class ListNode: # def __init__(self, val=0, next=None): # self.val = val # self.next = next class Solution: def swapPair..
파이썬으로 배우는 알고리즘 책을 공부하며 풀었던 LeetCode문제들을 재정리해보자. # 문제 설명 2번 Add Two Numbers는 주어진 두 연결리스트를 앞에서 부터 차례로 더하는 문제이다. # 풀이방법 1 - 반복문과 carry 이용 (내 풀이) # Definition for singly-linked list. # class ListNode: # def __init__(self, val=0, next=None): # self.val = val # self.next = next class Solution: def addTwoNumbers(self, l1: Optional[ListNode], l2: Optional[ListNode]) -> Optional[ListNode]: root = result ..
파이썬으로 배우는 알고리즘 책을 공부하며 풀었던 LeetCode문제들을 재정리해보자. # 문제 설명 206번 Reverse Linked List 는 연결 리스트를 뒤집는 문제이다. # 풀이방법 1 - 재귀함수 & Queue 이용(내 풀이) # Definition for singly-linked list. # class ListNode: # def __init__(self, val=0, next=None): # self.val = val # self.next = next class Solution: def reverseList(self, head: Optional[ListNode]) -> Optional[ListNode]: # reverse 함수에서 노드의 값을 저장하는 큐 values = deque() ..
HyeM207
HYEM's Storage