您的位置:首页 > 其它

翻转链表

2018-01-15 19:37 190 查看

思想

其实就是设置两个指针 pointer1, pointer2 。同步的移动pointer1, pointer2 ,head 这3个指针。这 3 个指针的前后顺序刚好是pointer1, pointer2 ,head。

这道题应该注意的是while循环的判断条件: pointer2 != null

代码

public ListNode reverse(ListNode head) {
ListNode pointer1, pointer2;

pointer1 = null;
pointer2 = head;

while(pointer2 != null) {
head = head.next;
pointer2.next = pointer1;
pointer1 = pointer2;
pointer2 = head;
}
return pointer1;
}


参考

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  lintcode 算法