思路:
通过两个引用,遍历两个链表,将引用统一,然后进行比较
public class Solution {
public ListNode getIntersectionNode(ListNode headA, ListNode headB) {
int countA = getLength(headA);
int countB = getLength(headB);
ListNode curA = headA;
ListNode curB = headB;
if(countA>countB){
for(int i=0;i<countA-countB;i++)
curA = curA.next;
}else{
for(int i=0;i<countB-countA;i++)
curB = curB.next;
}
while (curA != curB){
curA = curA.next;
curB = curB.next;
}
return curA;
}
public int getLength(ListNode a){
ListNode cur = a;
int count = 0 ;
while(cur != null){
cur = cur.next ;
count++;
}
return count;
}
}
寻找链表交点
853

被折叠的 条评论
为什么被折叠?



