两个链表的第一个公共结点
题目描述
输入两个链表,找出它们的第一个公共结点
代码
/*
public class ListNode {
int val;
ListNode next = null;
ListNode(int val) {
this.val = val;
}
}
*/
public class Solution {
public ListNode FindFirstCommonNode(ListNode pHead1, ListNode pHead2) {
ListNode temp1=pHead1;
ListNode temp2=pHead2;
int length1= getLengt( temp1);
int length2= getLengt( temp2);
if(length1>length2){
int count=length1-length2;
int i=0;
while(i!=count){
pHead1=pHead1.next;
i++;
}
}
if(length1<length2){
int count=length2-length1;
int i=0;
while(i!=count){
pHead2=pHead2.next;
i++;
}
}
while(pHead1!=pHead2){
pHead1=pHead1.next;
pHead2=pHead2.next;
}
return pHead1;
}
public int getLengt(ListNode pHead1){
int length=0;
while(pHead1!=null){
length++;
pHead1=pHead1.next;
}
return length;
}
}