/*struct ListNode { int val; struct ListNode next; ListNode(int x) : val(x), next(NULL) { }};/class Solution {public: ListNode* FindFirstCommonNode( ListNode* pHead1, ListNode* pHead2) { //首先要理解公共结点的意思是什么;公共部分一定出现在尾部,用两个栈从后往前遍历, //找到第一个不相等的结点,其前一个结点就是第一个公共结点 stack<ListNode> stk1, stk2; ListNod...