晚上好添加一個節點在單鏈表
我想實現由自己單鏈表和我碰到的一個問題,當我想創建一個搜索方法。顯然,當你要搜索一個節點(將用於在某個地方插入一個節點),你將不得不評估一些值,看看是否達到正確的位置。考慮到我的節點只有一個數據字段作爲標識符,我沒有看到任何其他方式使用它。但是,由於數據字段不唯一,因此可能有多個節點符合條件。
請考慮以下列表:5,7,2,8,3,1,6,5,8,4,2 2. 當我想在列表中某處添加一個節點時(比如說:在節點之後值8)他將在第一次出現'8'之後通過列表並添加新節點。如果我想在第二個8之後插入它,我該怎麼辦?
這甚至可能與單鏈表?
除此之外,我想有上似乎並沒有做我想做的事情(從列表中刪除最後一個節點),我的'removeLast()方法的一些反饋。我知道我的代碼不應該工作,如果列表只有1個值,我會盡快看到刪除最後一個節點的一般代碼工作。
我的代碼可以發現here。
與代碼編輯:
public class SingleLinkedList {
public void deleteLast() {
if (lastNode != null) {
Node currentNode = firstNode;
while (currentNode != null) {
Node nextNode = currentNode.getNextNode();
Node nextNextNode = nextNode.getNextNode();
if (nextNextNode == null) {
nextNextNode = null;
lastNode = nextNode;
}
}
listSize--;
}
}
}
但它的早上在這裏 –
這是可能的,但是你的方法的語義是什麼?在所有出現的數字之後插入一個數字? – nhahtdh
它也在這裏。我不知道爲什麼我晚上說。 –