題目:
輸入兩個單鏈表,找出它們的第一個公共結(jié)點其兴。鏈表結(jié)點定義如下:
struct listNode {
int m_nKey;
listNode *m_pNext;
};
解法一:
先求得兩個鏈表的長度m顶瞒、n,讓長的鏈表先走|m-n|步元旬,然后一起往后走榴徐,走的過程中比較兩個指針指向的結(jié)點是否是同一個結(jié)點即可。
解法二:
開兩個輔助棧匀归,先依次遍歷兩個鏈表坑资,把結(jié)點壓入棧中,然后穆端,一起出棧袱贮,最后一個相同的結(jié)點即為所求