追求進步 兩個鍊錶的第乙個公共結點

2021-07-11 01:29:33 字數 398 閱讀 9018

輸入兩個鍊錶,找出它們的第乙個公共結點。

/*

public class listnode

}*/public class solution

for(int i=0;i//兩個鍊錶一起走,直到相等,然後返回第乙個相交的結點

while(longlistnode!=null&&shortlistnode!=null &&longlistnode!=shortlistnode)

return longlistnode;

}//求鍊錶長度,遍歷一次鍊錶!注意:只能是這樣呢

public int getlistlength(listnode head)

return result;

}}

兩個鍊錶第乙個公共節點

先讓長的鍊錶的指標先走長的之差的步數,兩個再一起走,如果相遇就是第乙個公共節點 如果沒交點,就都走到空 struct listnode class solution while pl2 null 復位指標到頭節點 pl1 phead1 pl2 phead2 int dif len 0 if len1...

兩個鍊錶的第乙個公共結點

思路 獲取兩個鍊錶的長度,求的長度差n,讓長鍊表先遍歷n次,然後長鍊表和短鍊錶同時遍歷,當長鍊錶和短鍊錶相等時,即為第一公共結點。o m1 m2 public class findfirstcomnode int len1 getnodelength root1 int len2 getnodele...

兩個鍊錶的第乙個公共結點

題目 輸入兩個鍊錶,找出他們的第乙個公共結點。方法1 分別把兩個鍊錶的節點放入兩個棧裡,這樣兩個鍊錶的尾結點就位於兩個棧的棧頂,接下來比較兩個棧頂的結點是否相同。如果相同,則把棧頂彈出接著比較下乙個棧頂,直到找到最後乙個相同的結點。時間和空間複雜度都是o m n 方法2 先遍歷兩個鍊錶得到它們的長度...