剑指offer 反转链表

剑指offer 反转链表

  • 题目描述

输入一个链表,反转链表后,输出链表的所有元素。

  • 解法

借助新的指针,直接修改链表。运行时间:0ms,占用内存:8552k。当然,也可以用头插法等方法来解决问题。

/*
struct ListNode {
	int val;
	struct ListNode *next;
	ListNode(int x) :
			val(x), next(NULL) {
	}
};*/
class Solution {
public:
    ListNode* ReverseList(ListNode* pHead) {
		ListNode* p;
		if (pHead == NULL)
			return NULL;
		p = pHead;
		pHead = pHead->next;
		p->next = NULL;
		while (pHead)
		{
			ListNode* temp = p;
			p = pHead;
			pHead = pHead->next;
			p->next = temp;
		}
		return p;
    }
};
弹钢琴的猫 /
Published under (CC) BY-NC-SA in categories 算法  tagged with 剑指offer