[leetcode 206] Reverse Linked List

206. Reverse Linked List

https://leetcode.com/problems/reverse-linked-list/

해결 과정

현재 노드가 null이 될 때까지 앞으로 이동하며 현재노드.next = 직전노드 를 수행하였다.

코드

fun reverseList(head: ListNode?): ListNode? {
  var prev: ListNode? = null
  var current: ListNode? = head
  
  while(current != null) {
    var temp = current.next
    current.next = prev
    prev = current
    current = temp
  }
  return prev
}

배운 점

종이에 쓰면서 생각하니까 알고리즘을 생각하는 데 도움이 되었다. -> 방향의 화살표를 <- 로 바꿔보고, 끊고 이어보면서 오랜만에 문제를 풀었다.

Leave a comment