BackEnd/알고리즘

leetcode 24. Swap Nodes in Pairs

악역영애 2024. 8. 1. 11:23
반응형

 

딱 보면 홀수/짝수로도 생각할수있겠지만, 다음걸 가져와서 현재랑 swap 해주는 느낌으로 해보자

 

class Solution {
    public ListNode swapPairs(ListNode head) {
        ListNode node = head;
    }
}

 

연산 용 node 를 하나 선언해준다.

 

class Solution {
    public ListNode swapPairs(ListNode head) {
        ListNode node = head;
        
        while (node != null && node.next != null) {
            int temp = node.val;
            node.val = node.next.val;
            node.next.val = temp;
            node = node.next.next;
        }
        return head;
    }
}

 

temp에 현재 node.val 을 넣어두고

현재 node.val = next 값으로 넣어주고

next 값은 temp를 넣어줌!!

 

그리고 2개의 쌍을 바꿨으니 node 위치를 .next.next로 보내준다.

 

리턴할때는 head를 리턴하는데, node의 포인트는 이미 node의 끝을 향하고있기때문에 head를 보내준다

728x90