|
||||||||||
| 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.
TreeAlignExceptionpublic float distanceFromAlignment(Tree<AlignedNode<ValueType1,ValueType2>> alignment)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||