反转链表

反转一个单链表。

示例:
输入: 1->2->3->4->5->NULL
输出: 5->4->3->2->1->NULL


/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     public int val;
 *     public ListNode next;
 *     public ListNode(int x) { val = x; }
 * }
 */
public class Solution {
    public ListNode ReverseList(ListNode head) {
        
        //用三个指标,一个保存上一个,一个保存当前,一个用来临时保存数据
        ListNode temp = head;
        ListNode preNode = null;
        ListNode curNode = head;
        while(curNode != null)
        {
            temp = curNode.next;
            curNode.next = preNode;
            preNode = curNode;
            curNode = temp;
        }
        
        return preNode;
    }
}

首页 我的博客
粤ICP备17103704号