摘要:
1.使用快慢指针 2.快指针向后移动两个位置,慢指针向后移动一个位置 3.若快慢指针能相等,则有环 4.将一个指针指向head,一个指针指向fast,挨个向后遍历,相等即进环点 1 public class Solution { 2 public ListNode detectCycle(ListN 阅读全文
posted @ 2024-06-09 22:59
清川1
阅读(21)
评论(0)
推荐(0)
摘要:
1.求出两链表长度 2.分情况进行长链表头结点后移 3.移至相同长度,两头结点一起后移,找到公共节点 1 public class Solution { 2 public ListNode getIntersectionNode(ListNode headA, ListNode headB) { 3 阅读全文
posted @ 2024-06-09 22:42
清川1
阅读(21)
评论(0)
推荐(0)
摘要:
1.创建虚拟头结点ListNode pre=new ListNode(0,head); 2.创建快慢节点 3.快节点fastIndex先往后移N个位置 4.快慢slowIndex节点一直往后移,直至快节点到链表末尾 5.删除慢节点后面的节点 1 class Solution { 2 public L 阅读全文
posted @ 2024-06-09 22:12
清川1
阅读(19)
评论(0)
推荐(0)
摘要:
1.注意节点交换顺序,以防节点丢失 2.ListNode dummy = new ListNode(0, head); 定义空指针,并指向head节点 好语句 3.还是虚拟头结点好用 1 class Solution { 2 public ListNode swapPairs(ListNode he 阅读全文
posted @ 2024-06-09 10:46
清川1
阅读(16)
评论(0)
推荐(0)
摘要:
1.设置空头节点pre 2.设置工作指针cur 3.设置临时指针tem存工作指针的后一节点,防止丢失 4.最后返回虚拟头结点 1 class Solution { 2 public ListNode reverseList(ListNode head) { 3 ListNode pre=null; 阅读全文
posted @ 2024-06-09 10:04
清川1
阅读(28)
评论(0)
推荐(0)

浙公网安备 33010602011771号