[파워 버튼 알고리즘]24-두 개의 교환 링크 중의 노드

3380 단어 자바
제목.
하나의 링크 를 지정 하고 두 개의 인접 한 노드 를 교환 하 며 교환 후의 링크 를 되 돌려 줍 니 다.
너 는 단순히 노드 내부 의 값 을 바 꾸 는 것 이 아니 라 실제 적 으로 노드 교환 을 해 야 한다.
예시:
   1->2->3->4,       2->1->4->3.

해제
비공 식 문제 풀이
쉬 운 것 같 아 요.
실행 시:0 ms,Swap Nodes in Pairs 의 자바 제출 에서 100.00%의 사용 자 를 격파 하 였 습 니 다.
메모리 소모:33.5 MB,Swap Nodes in Pairs 의 자바 제출 에서 96.66%의 사용 자 를 격파 하 였 습 니 다.
/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode(int x) { val = x; }
 * }
 */
class Solution {
    public ListNode swapPairs(ListNode head) {
        if(head==null||head.next==null) return head;
        ListNode dummy = new ListNode(-1);
        ListNode pos;
        ListNode tmp=dummy;
        while(head!=null&&head.next!=null){
        	pos=head.next;
        	
        	tmp.next=pos;
        	head.next=pos.next;
        	pos.next=head;
        	
        	tmp=head;
        	head=tmp.next;
        }
        return dummy.next;
    }
}

감상
아주 간단 해 요.중간 문제 라 니.

좋은 웹페이지 즐겨찾기