<파이썬 알고리즘 인터뷰> 책에서 다룬 리트코드 문제들을 풀이한 포스팅이다.
문제는 모두 리트코드에 출제된 문제들이며, 직접 풀었지만, 책에서 주는 힌트와 풀이 과정들을 참고한 경우가 많다.
이곳은 정리한 책에 나온 문제에 대한 목록과 해설을 정리한 공식 깃허브 페이지 이며,
다음 포스팅은 내가 푼 <파이썬 알고리즘 인터뷰> 문제 풀이 목록을 정리해 놓았다.
문제
https://leetcode.com/problems/reverse-linked-list/
입력: 연결 리스트
출력: 연결 리스트
문제 요약: 연결리스트를 다시 연결리스트로 반환하는데, 순서를 바꿔야 한다.
유의 사항: 리스트의 수는 0개 부터 5000개 사이, 각 노드의 값은 -5000 부터 5000 사이
생각 과정
이렇게 연결리스트가 거꾸로 되야 한다.
python은
a, b = b, a
이렇게만 해도 되니까
위치 바꾸는 걸 마지막 노드가 가리키는 게 없을 때 까지 거꾸로 가면 되지 않을까?
풀이
class Solution:
def reverseList(self, head: ListNode) -> ListNode:
node = head
prev = None
while node:
node.next, next = prev, node.next
prev, node = node, next
return prev
'Programming > Coding Test' 카테고리의 다른 글
leetcode 739. Daily Temperatures 일일 온도 문제 풀이 (0) | 2021.06.20 |
---|---|
leetcode 20. Valid Parentheses 유효한 괄호 문제 풀이 (0) | 2021.06.20 |
leetcode 21. Merge Two Sorted. Lists 리트코드 21. 두 정렬 리스트의 병합 문제 풀이 (0) | 2021.05.15 |
leetcode 234. Palindrome Linked List 리트코드 234. 팰린드롬 연결 리스트 문제 풀이 (0) | 2021.05.13 |
leetcode 238. Product of Array Except Self 리트코드 238. 자신을 제외한 배열의 곱 (0) | 2021.05.09 |