0
点赞
收藏
分享

微信扫一扫

Java实现反转一个单链表,最详细 你绝对可以听懂


By 张旭 CaesarChang       

关注我 带你看更多好的技术知识和面试题

输入: 1->2->3->4->5->NULL
输出: 5->4->3->2->1->NULL

/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode(int x) { val = x; }
* }
*/
class Solution {
public ListNode reverseList(ListNode head) {
ListNode curNode=head;
ListNode preNode=null;
ListNode tempNode=null;
while(curNode!=null){
tempNode=curNode;
curNode=curNode.next;
tempNode.next=preNode;
preNode=tempNode;

}
return tempNode;

}

非常简单:

只需要讲一个暂时节点指向跟cur当前节点一样即可,让暂时节点反向指向pre上一个节点,更新pre指向cur当前节点,再更新cur当前节点到下一个,     最后把它放到while循环中(只要cur!=null) 即可

举报

相关推荐

0 条评论