Package dk.brics.automaton
Class StringUnionOperations
java.lang.Object
dk.brics.automaton.StringUnionOperations
Operations for building minimal deterministic automata from sets of strings.
The algorithm requires sorted input data, but is very fast (nearly linear with the input size).
- Author:
- Dawid Weiss
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Comparator<CharSequence>
Lexicographic order of input sequences. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
add
(CharSequence current) Add another character sequence to this automaton.static State
build
(CharSequence[] input) Build a minimal, deterministic automaton from a sorted list of strings.dk.brics.automaton.StringUnionOperations.State
complete()
Finalize the automaton and return the root state.
-
Field Details
-
LEXICOGRAPHIC_ORDER
Lexicographic order of input sequences.
-
-
Constructor Details
-
StringUnionOperations
public StringUnionOperations()
-
-
Method Details
-
add
Add another character sequence to this automaton. The sequence must be lexicographically larger or equal compared to any previous sequences added to this automaton (the input must be sorted). -
complete
public dk.brics.automaton.StringUnionOperations.State complete()Finalize the automaton and return the root state. No more strings can be added to the builder after this call.- Returns:
- Root automaton state.
-
build
Build a minimal, deterministic automaton from a sorted list of strings.
-