0
我在處理搜索和刪除鏈接列表的小java活動時遇到了一些問題。如何在鏈接列表中搜索和刪除
這裏有問題:
- 添加菜單方法主要以處理增加的頭,從該頭中刪除,並顯示鏈接列出。
- 然後添加一個菜單選項,用於刪除列表中的特定元素並將其刪除(以便提示用戶輸入要刪除的字符串 - 然後在鏈接列表中找到該元素並從列表中刪除該元素)。
這裏是類:
public class LLNode {
private String data;
private LLNode next;
public LLNode() {
this.data = null;
this.next = null;
}
public LLNode (String newData) {
this.data = (newData);
this.next = null;
}
public void updateNode (LLNode nextOne) {
this.next = nextOne;
}
public String toString() {
return this.data;
}
public LLNode getNext() {
return this.next;
}
}
public class LList {
private LLNode head;
public LList() {
head = null;
}
public void addAtHead (String newData) {
LLNode newNode = new LLNode (newData);
newNode.updateNode(head);
head = newNode;
}
public void display() {
LLNode temp = head;
while (temp != null) {
System.out.println (temp);
temp = temp.getNext();
}
}
public LLNode deleteAtHead () {
LLNode removedOne = head;
head = head.getNext();
return removedOne;
}
}
public class LinkedListExample {
public static void main(String[] args) {
LList list = new LList();
list.addAtHead("Bob");
list.addAtHead("Tom");
System.out.println("The list is ");
list.display();
LLNode removedOne = list.deleteAtHead();
System.out.println("After delete, the list new is ");
list.display();
System.out.println("The one that was deleted is..." + removedOne);
}
}
你有什麼問題? –
你嘗試了什麼?我們不在這裏進行鍛鍊;) –
確切的問題是什麼?你的代碼看起來沒問題,只是'deleteAtHead'和'addAtHead'方法可以從空檢查中受益。 我認爲這段代碼是家庭作業,因爲java有一個內置'LinkedList'。 –