zoukankan      html  css  js  c++  java
  • [LeetCode]Swap Nodes in Pairs 成对交换

    Given a linked list, swap every two adjacent nodes and return its head.

    For example,
    Given 1->2->3->4, you should return the list as 2->1->4->3.

    Your algorithm should use only constant space. You may not modify the values in the list, only nodes itself can be changed.

    思路:肯定是递归方便啦,我们做好了base case,一直调用自己就能够了。 要是想不出来base case是什么,多理解理解就熟悉了


    [java] view plaincopy
    1. public ListNode swapPairs(ListNode head) {  
    2.        if(head==nullreturn null;  
    3.        if(head.next==nullreturn head;  
    4.        ListNode temp=head.next;  
    5.        ListNode forward=head.next.next;  
    6.        temp.next=head;  
    7.        head.next=swapPairs(forward);  
    8.        return temp;  
    9.    }  
  • 相关阅读:
    CSPS模拟 49
    StrGame
    CSPS模拟 48
    [没有证明]原根求法
    CSPS模拟 47
    CSPS模拟 46
    CSPS模拟 45 乔迁之喜
    CSPS模拟 44
    平衡二叉树
    go语言学习--指针数组和数组指针
  • 原文地址:https://www.cnblogs.com/bhlsheji/p/4299504.html
Copyright © 2011-2022 走看看