1. A method of modifying a hierarchy of nodes containing data elements, the hierarchy comprising a root node at the top of the hierarchy, a plurality of leaf nodes at the bottom of the hierarchy, and a plurality of internal nodes interconnecting the leaf nodes to the root, where each internal node is connected to a single parent node upwardly in the hierarchy and one or more child nodes downwardly in the hierarchy, the method comprising the steps of: (a) selecting an internal node as an active node; (b) analyzing the parent and any children of the active node with a computer algorithm to identify similarities in the data elements stored therein; (c) moving or merging one or more of the children nodes based upon the analysis of step (b), wherein a child of an active node is promoted to become a sibling of the active node if the child is similar to the parent of the active node, and two or more children of the active node are merged into a single child node of the active node if the children are similar to each other; (d) selecting a subsequent internal node as the active node, and repeating steps (a)-(c); whereby multiple nodes are moved or merged within the hierarchy to transform the hierarchy into a clustered hierarchy characterized in that the similarity among the data elements subsumed under any node of the hierarchy increases from the root of the hierarchy downwards.
1. A method of modifying a hierarchy of nodes containing data elements, the hierarchy comprising a root node at the top of the hierarchy, a plurality of leaf nodes at the bottom of the hierarchy, and a plurality of internal nodes interconnecting the leaf nodes to the root, where each internal node is connected to a single parent node upwardly in the hierarchy and one or more child nodes downwardly in the hierarchy, the method comprising the steps of: (a) selecting an internal node as an active node; (b) analyzing the parent and any children of the active node with a computer algorithm to identify similarities in the data elements stored therein; (c) moving or merging one or more of the children nodes based upon the analysis of step (b), wherein a child of an active node is promoted to become a sibling of the active node if the child is similar to the parent of the active node, and two or more children of the active node are merged into a single child node of the active node if the children are similar to each other; (d) selecting a subsequent internal node as the active node, and repeating steps (a)-(c); whereby multiple nodes are moved or merged within the hierarchy to transform the hierarchy into a clustered hierarchy characterized in that the similarity among the data elements subsumed under any node of the hierarchy increases from the root of the hierarchy downwards. 15. The method of claim 1 , including the step of adding new data elements to various internal nodes within the current state of the hierarchy.