[英]How can I add elements to a LinkedList from a different class that the LinkedList is initialized in?
[英]How can I add a linkedlist to a trie leaf?
我在 java 中有一個字典項目。它將單詞添加到特里樹中,然后我需要在我輸入的每個單詞的末尾添加一個鏈表以保存含義。 我為特里樹和鏈表制作了兩種節點,如下所示。
static class TrieNode{
TrieNode[]children=new TrieNode[29];
boolean IsEnd;
TrieNode(){
IsEnd=false;
for(int i=0;i<29;i++)
children[i]=null;
}
}
static class Meaningnode{
String Meaning;
Meaningnode next;
public Meaningnode(String Meaning){
this.Meaning=Meaning;
}
}
26 個字母的 29 個鏈接和一個指向父級和空格 ' ' 的鏈接和一個指向列表的鏈接;
在您對 29 個條目的解釋中,您寫道:
26 個字母的 29 個鏈接,一個指向父級和空格的鏈接 ' ' 和一個指向列表的鏈接;
這里的問題是“列表中的一個”將違反預期的類型。 聲明是:
TrieNode[]children=new TrieNode[29];
但是您想為一個Meaningnode
而不是TrieNode
使用一個條目。 那是不對的。 相反,只需為此目的專用一個單獨的屬性,就像您已經為isEnd
擁有一個單獨的屬性一樣。 我什至也會為父母單獨輸入一個條目(如果你真的需要父母參考)。
最后,為Meaningnode
添加一個構造函數,它可以接受第二個參數來指定next
:
static class Meaningnode {
String Meaning;
Meaningnode next;
public Meaningnode(String Meaning) {
this.Meaning = Meaning;
}
public Meaningnode(String Meaning, Meaningnode next) {
this.Meaning = Meaning;
this.next = next;
}
}
static class TrieNode {
TrieNode[] children = new TrieNode[27];
boolean IsEnd;
TrieNode parent;
Meaningnode meaning;
TrieNode() {
IsEnd = false;
parent = null;
meaning = null;
for (int i = 0; i < 27; i++)
children[i] = null;
}
// Method to prepend a meaning to the list of meanings:
addMeaning(string meaning) {
this.meaning = new Meaningnode(meaning, this.meaning);
}
// Other methods...
// ...
}
static class Node{
String mean;
Node next;
Node(String s){
mean=s;
next=null;
}
}
static class TrieNode{
TrieNode[]children=new TrieNode[29];
boolean IsEnd;
Meanings_Linked_List list=new Meanings_Linked_List();
TrieNode(){
IsEnd=false;
for(int i=0;i<29;i++)
children[i]=null;
}
}
我知道它還沒有完成,只是因為項目我讓它變成這樣並修復它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.