티스토리 뷰
문제 설명
제한 조건
https://leetcode.com/explore/interview/card/top-interview-questions-easy/93/linked-list/603/
내 답안
class Solution {
func removeNthFromEnd(_ head: ListNode?, _ n: Int) -> ListNode? {
var firstHead = head
var secondHead = head
var prev: ListNode? = nil
for _ in 1...n {
firstHead = firstHead?.next
}
while firstHead != nil {
firstHead = firstHead?.next
prev = secondHead
secondHead = secondHead?.next
}
if prev == nil {
return head?.next
}
prev?.next = secondHead?.next
return head
}
}
접근 방법
사이트에서 제공한 힌트 :
Maintain two pointers and update one with a delay of n steps.
다른 풀이
알게 된 것
'코딩테스트' 카테고리의 다른 글
10월 25일 - 백준 10816번 숫자 카드 2 swift (0) | 2023.10.25 |
---|---|
10월 24일 - 부족한 금액 계산하기 swift (1) | 2023.10.24 |
10월 23일 - Delete Node in a Linked List swift (0) | 2023.10.23 |
10월 23일 - 최대공약수와 최소공배수 swift (0) | 2023.10.23 |
10월 22일 - 가운데 글자 가져오기 (0) | 2023.10.23 |
최근에 올라온 글