题解 | #反转链表#
反转链表
https://www.nowcoder.com/practice/75e878df47f24fdc9dc3e400ec6058ca
解法一:三个指针beg,mid,end。每次mid->next指向beg,然后三个指针都向后移动一位,知道end==null。最后一步是mid->next = beg。返回mid
<?php /*class ListNode{ var $val; var $next = NULL; function __construct($x){ $this->val = $x; } }*/ /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param head ListNode类 * @return ListNode类 */ function ReverseList($head) { // write code here if($head->next == null){ return $head; } $beg = null; $mid = $head; $end = $head->next; while($end != null){ $mid->next = $beg; $beg = $mid; $mid = $end; $end = $mid->next; } $mid->next = $beg; return $mid; }