1) Let X be the length of the first linked list until intersection point.

Let Y be the length of the second linked list until the intersection point.

Let Z be the length of the linked list from intersection point to End of

the linked list including the intersection node.

We Have

X + Z = C1;

Y + Z = C2;

2) Reverse first linked list.

3) Traverse Second linked list. Let C3 be the length of second list - 1.

Now we have

X + Y = C3

We have 3 linear equations. By solving them, we get

X = (C1 + C3 – C2)/2;

Y = (C2 + C3 – C1)/2;

Z = (C1 + C2 – C3)/2;

WE GOT THE INTERSECTION POINT.

4) Reverse first linked list.

Guys , i dont understand this method. I mean, why do we reverse the first linked list at all ?

And how do we know C3 ???? isnt that the question ?