题解 | #反转链表#
反转链表
http://www.nowcoder.com/practice/75e878df47f24fdc9dc3e400ec6058ca
package main
import . "nc_tools"
/*
* type ListNode struct{
* Val int
* Next *ListNode
* }
*/
/**
*
* @param pHead ListNode类
* @return ListNode类
*/
//双指针
func ReverseList( pHead *ListNode ) *ListNode {
// write code here
var pre *ListNode //定义一个空节点
for pHead != nil { //如果pHead不为空,就继续循环
temp := pHead.Next //将第一个节点存放临时temp
pHead.Next = pre //将第一个节点指向pre的空节点
pre = pHead //将pre往前移
pHead = temp //pHead将成为下一个节点
}
return pre
}