我嘗試使用下面的代碼來查找LinkedList
最後第k個元素。 它爲什麼總是返回null
?LinkedList的findElement
public Node findElem(Node head, int k){
if(k < 1|| k > this.length()){
System.out.println("error");
}
Node p1=head;
Node p2 = head;
for(int i=0;i<k-1;i++) {
p1 = p1.next;
}
while(p1 != null){
p1= p1.next;
p2 = p2.next;
}
return p2;
}
你從哪裏得到這段代碼?這僅僅因爲多種原因是不正確的。你現在正在做的是在鏈表的末尾找到'null'並返回它,在任何情況下都找不到任何特定的元素。 –
歡迎來到堆棧溢出!它看起來像你需要學習使用調試器。請幫助一些[互補調試技術](https://ericlippert.com/2014/03/05/how-to-debug-small-programs/)。如果您之後仍然遇到問題,請隨時回答一個更具體的問題。 –