160 相交鍊錶

2021-09-26 18:15:42 字數 720 閱讀 8071

題目描述:

題目問題和難點:

1.是找相交的那個節點,而不是值相等的節點。(示例中1的值相同但不是相交的節點)

2.此題目不考慮有環的鍊錶所以思路很簡單。

public static listnode getintersectionnode(listnode heada, listnode headb) 

//1.獲取兩個鍊錶的長度

int lengtha = 0;

int lengthb = 0;

listnode acopy = heada;

listnode bcopy = headb;

while(acopy!=null)

while(bcopy!=null)

//2.找到兩個鍊錶長度的差值,並進行對齊。(長的鍊錶多出來的長度去掉)

int dif = 0;

if(lengtha >lengthb)

}else

}//3.進行比較,節點相等返回

while(heada!=null&&headb!=null)else

}return null;

}

160 相交鍊錶

編寫乙個程式,找到兩個單鏈表相交的起始節點。如下面的兩個鍊錶 在節點 c1 開始相交。示例 1 輸入 intersectval 8,lista 4,1,8,4,5 listb 5,0,1,8,4,5 skipa 2,skipb 3 輸出 reference of the node with valu...

160相交鍊錶

題目描述 編寫乙個程式,找到兩個單鏈表相交的起始節點。沒有就返回null。注意 題解思路 從a鍊錶第乙個元素開始,去遍歷b鍊錶,找到乙個相同元素後,同步遍歷a和b鍊錶,所有元素相同,即兩個鍊錶為相交鍊錶,並返回同步遍歷的起始節點。struct listnode getintersectionnode...

160 相交鍊錶

編寫乙個程式,找到兩個單鏈表相交的起始節點。如下面的兩個鍊錶 在節點 c1 開始相交。示例 1 輸入 intersectval 8,lista 4,1,8,4,5 listb 5,0,1,8,4,5 skipa 2,skipb 3 輸出 reference of the node with valu...