2019-03-18-算法-进化(反转链表)
生活随笔
收集整理的這篇文章主要介紹了
2019-03-18-算法-进化(反转链表)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目描述
反轉一個單鏈表。
示例:
進階:
你可以迭代或遞歸地反轉鏈表。你能否用兩種方法解決這道題?
思路2:遞歸法
/*** 思路2:遞歸解決* 時間復雜度O(n),空間復雜度O(1)* @param head* @return*/public ListNode reverseList(ListNode head) {if(head == null || head.next == null) {return head;}ListNode curr = head, next = head.next, nNext = next.next;curr.next = null;return one(curr, next, nNext);}private ListNode one(ListNode curr, ListNode next, ListNode nNext) {next.next = curr;if(nNext != null) {return one(next, nNext, nNext.next);}else {return next;}}總結
以上是生活随笔為你收集整理的2019-03-18-算法-进化(反转链表)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2019-03-18-算法-进化(删除链
- 下一篇: 2019-03-21-算法-进化(合并两