[剑指offer][JAVA]面试题第[24]题[反转链表][递归][双指针][头插法]
生活随笔
收集整理的這篇文章主要介紹了
[剑指offer][JAVA]面试题第[24]题[反转链表][递归][双指针][头插法]
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
【問題描述】[中等]
定義一個函數(shù),輸入一個鏈表的頭節(jié)點,反轉(zhuǎn)該鏈表并輸出反轉(zhuǎn)后鏈表的頭節(jié)點。示例:輸入: 1->2->3->4->5->NULL 輸出: 5->4->3->2->1->NULL限制:0 <= 節(jié)點個數(shù) <= 5000【解答思路】
1. 雙指針/頭插法
時間復雜度:O(N) 空間復雜度:O(1)
2. 遞歸
時間復雜度:O(N) 空間復雜度:O(1)
【總結(jié)】
1.鏈表題目 遞歸和雙指針思想非常重要
2. 鏈表題目一定要畫圖
轉(zhuǎn)載: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/
總結(jié)
以上是生活随笔為你收集整理的[剑指offer][JAVA]面试题第[24]题[反转链表][递归][双指针][头插法]的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CodeForces-500C
- 下一篇: shell中字分隔的妙用:变量IFS