코테준비 - Remove Nth Node From End of List

정상화·2023년 2월 26일

LeetCode

목록 보기
18/222

Remove Nth Node From End of List

class Solution {
public:
    ListNode *removeNthFromEnd(ListNode *head, int n) {
        ListNode *prevNode = nullptr;
        auto curNode = head;

        while (senrigan(curNode, n) != nullptr) {
            prevNode = curNode;
            curNode = curNode->next;
        }

        if(!prevNode){
            return head->next;
        }
        prevNode->next = curNode->next;
        delete curNode;
        return head;
    }

    ListNode* senrigan(ListNode* cur, int n){
        auto temp = cur;
        for (int i = 0; i < n; i++) {
            temp = temp->next;
        }
        return temp;
    }
};
profile
백엔드 희망

0개의 댓글