|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectfr.orsay.lri.varna.models.treealign.TreeAlign<ValueType1,ValueType2>
ValueType1
- The type of values on nodes in the first tree.ValueType2
- The type of values on nodes in the second tree.public class TreeAlign<ValueType1,ValueType2>
Tree alignment algorithm. This class implements the tree alignment algorithm for ordered trees explained in article: T. Jiang, L. Wang, K. Zhang, Alignment of trees - an alternative to tree edit, Theoret. Comput. Sci. 143 (1995). Other references: - Claire Herrbach, Alain Denise and Serge Dulucq. Average complexity of the Jiang-Wang-Zhang pairwise tree alignment algorithm and of a RNA secondary structure alignment algorithm. Theoretical Computer Science 411 (2010) 2423-2432. Our implementation supposes that the trees will never have more than 32000 nodes and that the total distance will never require more significant digits that a float (single precision) has.
Nested Class Summary | |
---|---|
private class |
TreeAlign.Aligner
For arrays that take at least O(|T1|*|T2|) we take care not to use too big data types. |
private class |
TreeAlign.ConvertTreeToArray<ValueType>
|
private class |
TreeAlign.TreeData<ValueType>
|
Field Summary | |
---|---|
private TreeAlignLabelDistanceAsymmetric<ValueType1,ValueType2> |
labelDist
The distance function between labels. |
Constructor Summary | |
---|---|
TreeAlign(TreeAlignLabelDistanceAsymmetric<ValueType1,ValueType2> labelDist)
Create a TreeAlignSymmetric object, which can align trees. |
Method Summary | |
---|---|
TreeAlignResult<ValueType1,ValueType2> |
align(Tree<ValueType1> T1,
Tree<ValueType2> T2)
Align T1 with T2, computing both the distance and the alignment. |
float |
distanceFromAlignment(Tree<AlignedNode<ValueType1,ValueType2>> alignment)
Takes a alignment, and compute the distance between the two original trees. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private TreeAlignLabelDistanceAsymmetric<ValueType1,ValueType2> labelDist
Constructor Detail |
---|
public TreeAlign(TreeAlignLabelDistanceAsymmetric<ValueType1,ValueType2> labelDist)
labelDist
- The label distance.Method Detail |
---|
public TreeAlignResult<ValueType1,ValueType2> align(Tree<ValueType1> T1, Tree<ValueType2> T2) throws TreeAlignException
T1
- The first tree.T2
- The second tree.
TreeAlignException
public float distanceFromAlignment(Tree<AlignedNode<ValueType1,ValueType2>> alignment)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |