void SplitNode(pBtree p,int pos) { pBtree leftChild,rightChild; leftChild=p->Child[pos-1]; rightChild=(pBtree)malloc(sizeof(Btree)); FixChild(leftChild,rightChild); FixRoot(leftChild,p,rightChild,pos); }
void TreeFromMSA(const MSA &msa, Tree &tree, CLUSTER Cluster, DISTANCE Distance, ROOT Root) { if (CLUSTER_NeighborJoining == Cluster) TreeFromMSA_NJ(msa, tree, Cluster, Distance); else TreeFromMSA_UPGMA(msa, tree, Cluster, Distance); FixRoot(tree, Root); }