class ListNode {
int value = 0;
ListNode next = null;
public ListNode(int value) {
this.value = value;
}
}
/*
存储头结点的下一个节点
头结点指向新链表的头结点
头结点成为新链表的头结点
头结点的下一个节点成为新的头结点
*/
public static ListNode reverse(ListNode head) {
ListNode newHead = null;
while(head != null) {
ListNode next = head.next;
head.next = newHead;
newHead = head;
head = next;
}
return newHead;
}
// 测试代码
ListNode listNode = new ListNode(1);
listNode.next = new ListNode(2);
listNode.next.next = new ListNode(3);
listNode.next.next.next = new ListNode(4);
ListNode reverse = reverse(listNode);
System.out.println(reverse.value);
System.out.println(reverse.next.value);
System.out.println(reverse.next.next.value);
System.out.println(reverse.next.next.next.value);
反转链表
最新推荐文章于 2025-03-12 20:11:42 发布