Class DegeneratedGraphGeneratorGenerator.TreeNode
- java.lang.Object
-
- ai.libs.jaicore.search.syntheticgraphs.graphmodels.degenerated.DegeneratedGraphGeneratorGenerator.TreeNode
-
- All Implemented Interfaces:
ITransparentTreeNode
- Enclosing class:
- DegeneratedGraphGeneratorGenerator
public class DegeneratedGraphGeneratorGenerator.TreeNode extends java.lang.Object implements ITransparentTreeNode
-
-
Field Summary
Fields Modifier and Type Field Description protected intdepthprotected booleanhasChildrenprotected intidOfNodeAmongChildrenprotected java.math.BigIntegeridOfNodeOnLayerprotected java.util.Set<java.lang.Integer>indicesOfChildrenWithoutChildrenprotected java.math.BigIntegernumberOfLeafsFoundByDFSWhenReachingThisNodeprotected java.math.BigIntegernumOfLeftRelativesThatHaveChildrenprotected intnumOfLeftSiblingsThatHaveChildrenprotected DegeneratedGraphGeneratorGenerator.TreeNodeparent
-
Constructor Summary
Constructors Constructor Description TreeNode(DegeneratedGraphGeneratorGenerator.TreeNode parent, int depth, java.math.BigInteger idOfNodeOnLayer, int idOfNodeAmongChildren, java.math.BigInteger numOfLeftRelativesThatHaveChildren, boolean hasChildren, int numOfLeftSiblingsThatHaveChildren, java.math.BigInteger solutionsPriorToThisNodeViaDFS)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(java.lang.Object obj)intgetDepth()intgetDistanceToDeepestLeafUnderNode()intgetDistanceToShallowestLeafUnderNode()java.math.BigIntegergetNumberOfLeafsInSubtreesWithMaxNumberOfNodesPriorToThisNode(java.math.BigInteger maxNumberOfNodes)Gets the number of leaf nodes of all sub-trees of maximum given size prior to the node on which it is invoked.java.math.BigIntegergetNumberOfLeafsPriorToNodeViaDFS()java.math.BigIntegergetNumberOfLeafsStemmingFromLeftRelativesInSameGeneration()java.math.BigIntegergetNumberOfLeafsStemmingFromRightRelativesInSameGeneration()java.math.BigIntegergetNumberOfLeafsUnderNode()java.math.BigIntegergetNumberOfLeftRelativesInSameGeneration()java.math.BigIntegergetNumberOfRightRelativesInSameGeneration()java.math.BigIntegergetNumberOfSubtreesWithMaxNumberOfNodes(java.math.BigInteger maxNumberOfNodes)java.math.BigIntegergetNumberOfSubtreesWithMaxNumberOfNodesPriorToThisNode(java.math.BigInteger maxNumberOfNodes)booleanhasChildren()inthashCode()java.lang.StringtoString()
-
-
-
Field Detail
-
parent
protected DegeneratedGraphGeneratorGenerator.TreeNode parent
-
depth
protected int depth
-
indicesOfChildrenWithoutChildren
protected java.util.Set<java.lang.Integer> indicesOfChildrenWithoutChildren
-
idOfNodeAmongChildren
protected int idOfNodeAmongChildren
-
idOfNodeOnLayer
protected java.math.BigInteger idOfNodeOnLayer
-
numOfLeftSiblingsThatHaveChildren
protected int numOfLeftSiblingsThatHaveChildren
-
numOfLeftRelativesThatHaveChildren
protected java.math.BigInteger numOfLeftRelativesThatHaveChildren
-
numberOfLeafsFoundByDFSWhenReachingThisNode
protected java.math.BigInteger numberOfLeafsFoundByDFSWhenReachingThisNode
-
hasChildren
protected boolean hasChildren
-
-
Constructor Detail
-
TreeNode
public TreeNode(DegeneratedGraphGeneratorGenerator.TreeNode parent, int depth, java.math.BigInteger idOfNodeOnLayer, int idOfNodeAmongChildren, java.math.BigInteger numOfLeftRelativesThatHaveChildren, boolean hasChildren, int numOfLeftSiblingsThatHaveChildren, java.math.BigInteger solutionsPriorToThisNodeViaDFS)
-
-
Method Detail
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equalsin classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
getDepth
public int getDepth()
- Specified by:
getDepthin interfaceITransparentTreeNode
-
getNumberOfLeftRelativesInSameGeneration
public java.math.BigInteger getNumberOfLeftRelativesInSameGeneration()
- Specified by:
getNumberOfLeftRelativesInSameGenerationin interfaceITransparentTreeNode
-
getNumberOfLeafsPriorToNodeViaDFS
public java.math.BigInteger getNumberOfLeafsPriorToNodeViaDFS()
- Specified by:
getNumberOfLeafsPriorToNodeViaDFSin interfaceITransparentTreeNode
-
getNumberOfRightRelativesInSameGeneration
public java.math.BigInteger getNumberOfRightRelativesInSameGeneration()
- Specified by:
getNumberOfRightRelativesInSameGenerationin interfaceITransparentTreeNode
-
getNumberOfLeafsStemmingFromLeftRelativesInSameGeneration
public java.math.BigInteger getNumberOfLeafsStemmingFromLeftRelativesInSameGeneration()
- Specified by:
getNumberOfLeafsStemmingFromLeftRelativesInSameGenerationin interfaceITransparentTreeNode
-
getNumberOfLeafsStemmingFromRightRelativesInSameGeneration
public java.math.BigInteger getNumberOfLeafsStemmingFromRightRelativesInSameGeneration()
- Specified by:
getNumberOfLeafsStemmingFromRightRelativesInSameGenerationin interfaceITransparentTreeNode
-
getNumberOfLeafsUnderNode
public java.math.BigInteger getNumberOfLeafsUnderNode()
- Specified by:
getNumberOfLeafsUnderNodein interfaceITransparentTreeNode
-
getDistanceToShallowestLeafUnderNode
public int getDistanceToShallowestLeafUnderNode()
- Specified by:
getDistanceToShallowestLeafUnderNodein interfaceITransparentTreeNode
-
getDistanceToDeepestLeafUnderNode
public int getDistanceToDeepestLeafUnderNode()
- Specified by:
getDistanceToDeepestLeafUnderNodein interfaceITransparentTreeNode
-
getNumberOfSubtreesWithMaxNumberOfNodesPriorToThisNode
public java.math.BigInteger getNumberOfSubtreesWithMaxNumberOfNodesPriorToThisNode(java.math.BigInteger maxNumberOfNodes)
- Specified by:
getNumberOfSubtreesWithMaxNumberOfNodesPriorToThisNodein interfaceITransparentTreeNode
-
getNumberOfLeafsInSubtreesWithMaxNumberOfNodesPriorToThisNode
public java.math.BigInteger getNumberOfLeafsInSubtreesWithMaxNumberOfNodesPriorToThisNode(java.math.BigInteger maxNumberOfNodes)
Description copied from interface:ITransparentTreeNodeGets the number of leaf nodes of all sub-trees of maximum given size prior to the node on which it is invoked. Note that the leafs in the same sub-tree are not counted. These can be obtained by computing the number of all leaf nodes prior to this one minus the result of this method.- Specified by:
getNumberOfLeafsInSubtreesWithMaxNumberOfNodesPriorToThisNodein interfaceITransparentTreeNode- Returns:
-
getNumberOfSubtreesWithMaxNumberOfNodes
public java.math.BigInteger getNumberOfSubtreesWithMaxNumberOfNodes(java.math.BigInteger maxNumberOfNodes)
- Specified by:
getNumberOfSubtreesWithMaxNumberOfNodesin interfaceITransparentTreeNode
-
hasChildren
public boolean hasChildren()
- Specified by:
hasChildrenin interfaceITransparentTreeNode
-
-