中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

兩兩交換鏈表中的節點示例

發布時間:2021-06-22 15:29:53 來源:億速云 閱讀:129 作者:chen 欄目:大數據

這篇文章主要講解了“兩兩交換鏈表中的節點示例”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“兩兩交換鏈表中的節點示例”吧!

  • 自己解題第一次 (超時了)

public ListNode swapPairs(ListNode head) {
        ListNode curr = head;
        while (curr != null) {
            ListNode next = curr.next.next;
            if (next != null) {
                ListNode temp = curr;
                curr = next;
                curr.next.next = temp;
            }
        }
        return curr;
    } 

  • 自己第二次解題(超時 錯誤)

  public ListNode swapPairs(ListNode head) {
        ListNode curr = head;
        ListNode pre = head.next;
        while (curr != null && pre != null) {
            ListNode a = curr;
            ListNode b = curr.next;
            // 修改當前節點的指針指向前一個節點
            a.next = pre;
            pre.next = b;
            curr = b.next;
            pre = b;
        }
        return pre;
    }

  • 讀分析之后的答案

public ListNode swapPairs(ListNode head) {
    // 創建一個空節點 默認指向頭指針
   ListNode pre = new ListNode(0);
   pre.next = head;
   // temp指向第一個node
   ListNode temp = pre;
   while(temp.next != null && temp.next.next !=null){
       // 要交換的元素
       ListNode a = temp.next;
       // 要交換元素的下一個元素
       ListNode b = temp.next.next;
        //temp指向b
       temp.next = b;
       // a指向b.next
       a.next = b.next;
       // b指向a
       b.next = a;
       // 將交換完的a節點 變成起始節點
       temp = a;
   }
   //  ???? 這個返回值還是不理解 先跳過
   return pre.next;

}

感謝各位的閱讀,以上就是“兩兩交換鏈表中的節點示例”的內容了,經過本文的學習后,相信大家對兩兩交換鏈表中的節點示例這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

洛隆县| 曲阳县| 杨浦区| 永清县| 东源县| 元江| 天长市| 清新县| 河东区| 司法| 萨嘎县| 青神县| 淮南市| 瑞安市| 松江区| 军事| 天祝| 谢通门县| 博乐市| 达州市| 汕头市| 和林格尔县| 梅州市| 五台县| 龙川县| 绥江县| 鄂尔多斯市| 于田县| 鄂伦春自治旗| 申扎县| 视频| 永州市| 宜州市| 普安县| 桑日县| 宁南县| 阳西县| 应城市| 定远县| 阜城县| 崇信县|