![JAR search and dependency download from the Maven repository](/logo.png)
edu.berkeley.nlp.util.TrieWithBackPointers Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of berkeleyparser Show documentation
Show all versions of berkeleyparser Show documentation
The Berkeley parser analyzes the grammatical structure of natural language using probabilistic context-free grammars (PCFGs).
The newest version!
package edu.berkeley.nlp.util;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class TrieWithBackPointers extends Trie
{
@Override
protected Trie newTrie(boolean useIdentity2, K first, V v2, Trie trie)
{
return new TrieWithBackPointers(useIdentity2, first, v2, trie);
}
private Trie backPointer;
private K k;
public TrieWithBackPointers(boolean useIdentity)
{
this(useIdentity, null,null,null);
}
public TrieWithBackPointers()
{
this(false, null,null,null);
}
private TrieWithBackPointers(boolean useIdentity, K k, V v, Trie backPointer)
{
super(useIdentity, k, v, backPointer);
this.backPointer = backPointer;
this.k = k;
}
public Trie getPreviousTrie()
{
return backPointer;
}
@Override
public TrieWithBackPointers getNextTrie(K k)
{
return (TrieWithBackPointers) super.getNextTrie(k);
}
public List retraceBackPointers()
{
List list = new ArrayList();
retraceFromNodeHelper(list);
Collections.reverse(list);
return list;
}
private void retraceFromNodeHelper(List list)
{
if (k == null) return;
list.add(k);
((TrieWithBackPointers) backPointer).retraceFromNodeHelper(list);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy