兩個鍊錶交集

2021-10-02 15:21:38 字數 1184 閱讀 1157

題目給定兩個鍊錶,兩個鍊錶有一部分是一樣,求給出兩個鍊錶交集開始的地方。

方法1步驟1 ,求先求出兩個鍊錶的長度差,然後讓

步驟2,長度較長的鍊錶,向後移動長度差。使得兩個鍊錶後續遍歷長度相同,

步驟3 ,最後移動兩個指標,一次對比資料,

def getintersectionnode(heada,headb):

cura,curb = heada,headb

lena,lenb = 0,0

while cura is not none:

lena += 1

cura = cura.next

while curb is not none:

lenb += 1

curb = curb.next

cura,curb = heada,headb

if lena > lenb:

for i in range(lena-lenb):

cura = cura.next

elif lenb > lena:

for i in range(lenb - lena):

curb = curb.next

while curb != cura:

curb = curb.next

cura = cura.next

return cura

方法2 ,將兩個鍊錶相互補齊,然後遍歷,

兩個有序鍊錶序列的交集

已知兩個非降序鍊錶序列s1與s2,設計函式構造出s1與s2的交集新鍊錶s3。輸入分兩行,分別在每行給出由若干個正整數構成的非降序序列,用 1 表示序列的結尾 1 不屬於這個序列 數字用空格間隔。在一行中輸出兩個輸入序列的交集序列,數字間用空格分開,結尾不能有多餘空格 若新鍊錶為空,輸出null。1 ...

兩個有序鍊錶序列的交集

已知兩個非降序鍊錶序列s1與s2,設計函式構造出s1與s2的交集新鍊錶s3。輸入分兩行,分別在每行給出由若干個正整數構成的非降序序列,用 1表示序列的結尾 1不屬於這個序列 數字用空格間隔。在一行中輸出兩個輸入序列的交集序列,數字間用空格分開,結尾不能有多餘空格 若新鍊錶為空,輸出null。1 2 ...

兩個有序鍊錶序列的交集

7 52 兩個有序鍊錶序列的交集 20 分 已知兩個非降序鍊錶序列s1與s2,設計函式構造出s1與s2的交集新鍊錶s3。輸入分兩行,分別在每行給出由若干個正整數構成的非降序序列,用 1表示序列的結尾 1不屬於這個序列 數字用空格間隔。在一行中輸出兩個輸入序列的交集序列,數字間用空格分開,結尾不能有多...