Reverse Linked List(leetcode206)

Reverse a singly linked list.

Example:

Input: 1->2->3->4->5->NULL
Output: 5->4->3->2->1->NULL

Follow up:

A linked list can be reversed either iteratively or recursively. Could you implement both?

public static ListNode reverseList(ListNode head) {

    ListNode headNew = null;
    ListNode node = head;
    while(null != node){

        ListNode node2 = new ListNode(node.val);
        node2.next = headNew;
        headNew = node2;
        node = node.next;
    }
    return headNew;

}

测试一下:

int array[] ={1,2,3,4,5};
    ListNode head = ListNode.buildeListNode(array);
    ListNode headNew =  reverseList(head);
    ListNode.printListNode(headNew);
}

输出:

git:https://github.com/woshiyexinjie/leetcode-xin

猜你喜欢

转载自my.oschina.net/u/2277632/blog/2963955