lojix/learning/src/main/com/thesett/aima/learning/decisiontree/prototype/Decision.java
public void initializeLookups(DecisionTree thisNode)
    {
        // Scan over all the decision trees children at this point inserting them into the lookup table depending
        // on the ordinal of the attribute value that matches them.
        for (Iterator<Tree<DecisionTreeElement>> i = thisNode.getChildIterator(); i.hasNext();)
        {
            DecisionTree nextChildTree = (DecisionTree) i.next();

            // Get the matching attribute value from the childs decision tree element.
            OrdinalAttribute matchingValue = nextChildTree.getElement().getAttributeValue();

            // Insert the matching sub-tree into the lookup table.
            decisions[matchingValue.ordinal()] = nextChildTree;
        }
    }
public void initializeLookups(DecisionTree thisNode)
    {
        // Scan over all the decision trees children at this point inserting them into the lookup table depending
        // on the ordinal of the attribute value that matches them.
        for (Iterator<Tree<DecisionTreeElement>> i = thisNode.getChildIterator(); i.hasNext();)
        {
            DecisionTree nextChildTree = (DecisionTree) i.next();

            // Get the matching attribute value from the childs decision tree element.
            OrdinalAttribute matchingValue = nextChildTree.getElement().getAttributeValue();

            // Insert the matching sub-tree into the lookup table.
            decisions[matchingValue.ordinal()] = nextChildTree;
        }
    }
Initializes the lookup table for this decision node. The specified decision tree that corresponds to this node is
used to extract all the possible outcomes for this decision and these are stored in a lookup table so that future
decisions made with this tree will run faster.

@param thisNode the decision tree that this decision node is the element from.