牛客题霸NC78反转链表c++题解
反转链表
http://www.nowcoder.com/questionTerminal/75e878df47f24fdc9dc3e400ec6058ca
题意:
跟题目名称一样
解法:
反转链表(单向),就是让每个元素的指向的元素的
只回来。
那就新建一个指针来记录上个元素,进行操作。
但是上面操作有一点小问题:无法向后转移。
解决方案:直接再开一个指针来记录当前元素的即可。
代码(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;
}
};
传音控股公司福利 333人发布
