|
|
|
| Q-RAND(S, Q): |
|
| 1. |
Randomly select a quartet topology in Q as the initial phylogeny T; |
| 2. |
Delete the four taxa of T from the taxon set S; |
| 3. |
Randomly select a taxon s from S; |
| 4. |
Locate a separator v of T; |
| 5. |
Randomly select a taxon from each sub-phylogeny of T - {v}, say sa, sb, and sc; |
| 6. |
Decide which sub-phylogeny of T - {v} taxon s should be inserted into based on the quartet topology for {sa, sb, sc, s}; |
| 7. |
If the located sub-phylogeny has only one edge, |
| 7.1. |
Insert s on that edge and let the new phylogeny be T; |
| 8. |
Else, |
| 8.1. |
Merge the other two sub-phylogenies as a super taxon (which replaces v); |
| 8.2. |
Let the located sub-phylogeny with the super taxon be the new current phylogeny T; |
| 8.3. |
Go back to Step 4; |
| 9. |
Delete taxon s from S; |
| 10. |
If S is not empty, |
| 10.1. |
Go back to Step 3; |
| 11. |
Else, |
| 11.1. |
Output the phylogeny T. |
Wu et al. Algorithms for Molecular Biology 2008 3:1 doi:10.1186/1748-7188-3-1 |
|