我在思考Algo以找到單鏈接列表中的第3個最後一個元素,我自己想出了一個(空間高效)
將ArrayList中的鏈表使用時間複雜度爲O(n)的循環[很多空間複雜度]
然後找到Arraylist的大小並在(size-2)索引位置檢索元素[required element] 請指導我如果我的算法中意義查找單鏈接列表中的第3個最後一個元素 - 算法
FYI
其他我搜索是: 把兩個指針,並保持1指針3日的Elemen第1個要素和第二指針上t並將它們並行移動
當第二個指針到達LinkList的末尾時,檢索第一個指針指向的節點[必需節點]
參見:http://stackoverflow.com/questions/460137/algorithm-to-find-the-pointer-to-the-node-m-steps-to-tail-in-a-singly- linked-lis – maybeWeCouldStealAVan
您可以使用單個指針。遍歷直到'ptr.next()。next()。next()== null'; – GriffeyDog
@GriffeyDog由於'遍歷'是一系列'.next()'調用,所以你只需要進行三次遍歷,只需要一次。但是,由於緩存,您的方法可能會比三次單獨的遍歷更快。 – maybeWeCouldStealAVan