206. 反轉連結串列 [Leetcode] 206. 反轉連結串列 java 迭代和遞迴
阿新 • • 發佈:2018-11-08
一、迭代(https://blog.csdn.net/fx677588/article/details/72357389 )
class Solution { public ListNode reverseList(ListNode head) { if(head==null||head.next==null){ return head; } ListNode p=null; ListNode q=null; while(head!=null){ q=head.next;//把head.next的位置給q head.next=p;//把p的位置給head.next p=head;//把head的位置給p head=q;//把q的位置給head } return p; } }
二、遞迴(http://www.cnblogs.com/tengdai/p/9279421.html)
class Solution { public ListNode reverseList(ListNode head) { if(head==null||head.next==null){ return head; } ListNode second=head.next; ListNode reverseHead=reverseList(second); second.next=head; head.next=null; return reverseHead; } }