單鏈表找交點

兩個可能相交的單鏈表,找出他們的交點

模型

head
a1     a2
\     /
 \   /
  \ /
   |
   |
   |
   |
  tail

注意是單鏈表,所以他們的形狀會是Y型而非X型。

分析

首先,最簡單的一種方法是遍歷,只是時間複雜度特別高。
簡單來說,這兩條鏈表的相交前長度都是不同的,但相交後的長度一致,那麼只要想辦法讓他們從後往前遍歷,就很容易找到交點。
- 存數組
- 用棧
其實都是相近的辦法,但是棧比較高大上。
那麼,就好辦了,同時出棧或者同時逆序遍歷,遇到下一節點不同的就是交點。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章