The second approch would be, just compare the node address one by one. If you found a matching address meas that address is the merge point of two singly linked list.
For example, you can do something like this:
node1, node2;
while(node1) {
for (;node2; node2 = node2->next) {
if (node1 == node2) {
printf("Merge point found\n");
break;
}
}
node1 = node1->next;
}