您的位置:首页 > 其它

LeetCode 206-Reverse Linked List

2015-06-01 11:27 295 查看
题目:Reverse a singly linked list.

分析:此题在于细节,处理链表长度为0、1、2长度的特殊情况

代码:
/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode(int x) { val = x; }
 * }
 */
public class Solution {
    public ListNode reverseList(ListNode head) {
        if(head==null){
            return null;
        }
        ListNode left ,middle,right;
        left=head;
        middle=left.next;
        if(middle==null){
        	return left;
        }
        right=middle.next;
        left.next=null;
        while(right!=null){
    	  
    	   middle.next=left;
    	   left=middle;
    	   middle=right;
    	   right=middle.next;
    	   
       }
        middle.next=left;
        
		return middle;
        
        
    }
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: