题解 | #反转链表#
翻转链表过程
链表特点是头结点和尾节点相连,增删快,查找慢
本次编写是借鉴他人成果,然后进行知识梳理
- 头结点为空,直接返回
- 头结点不为空时,持续遍历
- 当头结点不是最后一个元素时候,进行链表元素交换(当前节点下一个节点不为空)
- 返回头结点
解答
public class Solution { public ListNode ReverseList(ListNode head) { if(head == null) return null; ListNode resverseHead = null; ListNode tmp = null; ListNode pre = null; while(head!=null){ tmp = head.next; head.next = pre; if(tmp==null) resverseHead = head; pre = head; head = tmp; } return resverseHead; } }