Represents a sequence that may contain a terminal symbol
The number of distinct leaf string identifiers in the subtree of v
The number of distinct leaf string identifiers in the subtree of v
Number of nodes by their depth-first number in the tree
Number of nodes by their depth-first number in the tree
The number of distinct leaf string identifiers in the subtree of v
Efficiently computes an iterator over the multiple common subsequences from this generalized suffix tree.
Efficiently computes an iterator over the multiple common subsequences from this generalized suffix tree.
Pre-processing of this algorithm has a linear-time complexity. It is fully described in section 9.7 "A linear-time solution to the multiple common substring problem" of Dan Gusfield's book "Algorithms on Strings, Trees, and Sequences" (1997).
An iterator over the sequences along with their frequencies
Clear variable pre-computed for the constant-time LCA retrieval process
Clear variable pre-computed for the constant-time LCA retrieval process
Part of the MCSA pre-processing.
Part of the MCSA pre-processing.
Clear variable used in this processing ("clean slate")
Part of the LCA pre-processing
Part of the LCA pre-processing
Part of the LCA pre-processing
Part of the LCA pre-processing
Part of the MCSA pre-processing
Part of the MCSA pre-processing
Determines if a pattern is contained in the suffix tree
Determines if a pattern is contained in the suffix tree
Part of the LCA pre-processing
Part of the LCA pre-processing
Computes the set of internal nodes by their depth-first number (i.e., internal nodes and leaf nodes but not the root)
Computes the set of internal nodes by their depth-first number (i.e., internal nodes and leaf nodes but not the root)
Computes the set of nodes by their depth-first number (including root, internal nodes and leaf nodes)
Computes the set of nodes by their depth-first number (including root, internal nodes and leaf nodes)
Computes an edge-label on a built generalized suffix tree
Computes an edge-label on a built generalized suffix tree
Computes the edge label of a node taking into account the context of the Ukkonen's algorithm.
Computes the edge label of a node taking into account the context of the Ukkonen's algorithm.
This method is not efficient and should NOT be used because it makes copies of subsequences
Determines the occurrences of a pattern in this suffix tree
Determines the occurrences of a pattern in this suffix tree
A list of pairs containing the sequence ID and the position of the given sequence as a starting index (starting from 0, else an empty list
Determines the longest common subsequences between a given pattern and the generalized suffix tree.
Determines the longest common subsequences between a given pattern and the generalized suffix tree.
For instance, given a suffix tree containing sequences:
It will return:
an empty list if the longest common subsequence does not exist, else a list of triple containing the starting index (inclusive, starting from 0), the end index (exclusive) and the set of sequence IDs containing this subsequence along with the starting position of the (sub)pattern in the sequence (starting from 0).
Computes an iterator over the full sequences of this generalized suffix tree
Computes an iterator over the full sequences of this generalized suffix tree
Retrieves the ith item on the edge label to the given node
Retrieves the ith item on the edge label to the given node
this method does not check for out-of-bounds error
Retrieves a sequence by a given ID
Retrieves a sequence by a given ID
Computes the full label from the root to the given node on a built generalized suffix tree
Computes the full label from the root to the given node on a built generalized suffix tree
Computes the length of an edge-label on a built generalized suffix tree
Computes the length of an edge-label on a built generalized suffix tree
Computes the path from the root to a given node.
Computes the path from the root to a given node.
This method is costly in computational time (in other words, inefficient).
Computes an informative label containing the edge-label, the path from the root and the count C(node) if it exists on a built generalized suffix tree
Computes an informative label containing the edge-label, the path from the root and the count C(node) if it exists on a built generalized suffix tree
Computes the lowest common ancestor to two given nodes identified by their depth-first number (constant-time LCA retrieval)
Computes the lowest common ancestor to two given nodes identified by their depth-first number (constant-time LCA retrieval)
Computes the lowest common ancestor of two given nodes (constant-time LCA retrieval)
Computes the lowest common ancestor of two given nodes (constant-time LCA retrieval)
Computes the multiple common subsequence from this generalized suffix tree.
Computes the multiple common subsequence from this generalized suffix tree.
This method is NOT efficient for large tree, see bulkMultipleCommonSubsequence
instead.
Pre-processing of this algorithm has a linear-time complexity. It is fully described in section 9.7 "A linear-time solution to the multiple common substring problem" of Dan Gusfield's book "Algorithms on Strings, Trees, and Sequences" (1997).
Number of suffixes in this generalized suffix tree
Number of suffixes in this generalized suffix tree
Mapping: node to depth-first search numbers
Linear time pre-processing for LCA constant-time retrieval.
Linear time pre-processing for LCA constant-time retrieval.
This pre-processing is fully described in chapter 8 "Constant-Time Lowest Common Ancestor Retrieval" of Dan Gusfield's book "Algorithms on Strings, Trees, and Sequences" (1997).
Pre-processing of the Multiple Common Subsequence Algorithm (MCSA)
Pre-processing of the Multiple Common Subsequence Algorithm (MCSA)
This pre-processing is fully described in section 9.7 "A linear-time solution to the multiple common substring problem" of Dan Gusfield's book "Algorithms on Strings, Trees, and Sequences" (1997).
Number of sequences in this suffix tree
Number of sequences in this suffix tree
Computes an iterator over the suffixes of this generalized suffix tree
Computes an iterator over the suffixes of this generalized suffix tree
Represents a generalized suffix tree builder in which it is possible to insert several sequences of items.
type of the items in the sequences
type of the sequences