标签:leetcode解题报告 算法 java 链表
https://oj.leetcode.com/problems/intersection-of-two-linked-lists/A: a1 → a2 ↘ c1 → c2 → c3 ↗ B: b1 → b2 → b3
public class Solution { public ListNode getIntersectionNode(ListNode headA, ListNode headB) { if(headA==null||headB==null) { return null; } int lengthA = 1; int lengthB = 1; ListNode iterA = headA; while(iterA.next!=null) { iterA = iterA.next; lengthA++; } ListNode iterB = headB; while(iterB.next!=null) { iterB = iterB.next; lengthB++; } if(iterA!=iterB) { return null; } if(lengthA>lengthB) { int tmp = lengthA - lengthB; while(tmp>0) { headA = headA.next; tmp--; } } else { int tmp = lengthB - lengthA; while(tmp>0) { headB = headB.next; tmp--; } } while(headA!=headB) { headA = headA.next; headB = headB.next; } return headA; } }
LeetCode Intersection of Two Linked Lists 解题报告
标签:leetcode解题报告 算法 java 链表
原文地址:http://blog.csdn.net/worldwindjp/article/details/42225921