原题链接

题意:

跟题目名称一样

解法:

反转链表(单向),就是让每个元素的指向的元素的只回来。

那就新建一个指针来记录上个元素,进行操作。

但是上面操作有一点小问题:无法向后转移。

解决方案:直接再开一个指针来记录当前元素的即可。

代码(c++):

class Solution {
public:
    ListNode* ReverseList(ListNode* pHead) {
        ListNode* s;
        ListNode* z = NULL;
        while(pHead != NULL){
            s = pHead ->next;
            pHead ->next = z;
            z = pHead;
            pHead = s;
        }
        return z;
    }
};