Files
dsa-competitive-programming/leetcode/lc24/SwapNodes.cpp
T
2026-02-11 14:56:22 +05:30

31 lines
736 B
C++

class Solution{
public:
ListNode* SwapNode(ListNode* head){
if(!head || !head->next) return head;
ListNode* dummy = new ListNode(0);
dummy->next = head;
ListNode* cur = head;
ListNode* prev = dummy;
while(cur && cur->next){
ListNode* nextPair = cur->next->next;
ListNode* second = cur->next;
second->next = cur;
cur->next = nextPair;
prev->next = second;
prev = cur;
cur = nextPair;
}
ListNode* newHead = dummy->next;
delete dummy;
return newHead;
}
};
//TC : O(n)
//SC : O(1)