[剑指offer][JAVA]面试题第[24]题[反转链表][递归][双指针][头插法]
生活随笔
收集整理的這篇文章主要介紹了
[剑指offer][JAVA]面试题第[24]题[反转链表][递归][双指针][头插法]
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
【問題描述】[中等]
定義一個函數,輸入一個鏈表的頭節點,反轉該鏈表并輸出反轉后鏈表的頭節點。示例:輸入: 1->2->3->4->5->NULL 輸出: 5->4->3->2->1->NULL限制:0 <= 節點個數 <= 5000【解答思路】
1. 雙指針/頭插法
時間復雜度:O(N) 空間復雜度:O(1)
2. 遞歸
時間復雜度:O(N) 空間復雜度:O(1)
【總結】
1.鏈表題目 遞歸和雙指針思想非常重要
2. 鏈表題目一定要畫圖
轉載:https://leetcode-cn.com/problems/fan-zhuan-lian-biao-lcof/solution/ru-guo-ni-kan-wan-ping-lun-he-ti-jie-huan-you-wen-/
鏈接:https://leetcode-cn.com/problems/fan-zhuan-lian-biao-lcof/solution/dong-hua-yan-shi-duo-chong-jie-fa-206-fan-zhuan-li/
總結
以上是生活随笔為你收集整理的[剑指offer][JAVA]面试题第[24]题[反转链表][递归][双指针][头插法]的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CodeForces-500C
- 下一篇: shell中字分隔的妙用:变量IFS