Efficient enumeration of stereoisomers of tree structured molecules using dynamic programming

  • Imada T
  • Ota S
  • Nagamochi H
 et al. 
  • 11


    Mendeley users who have this article in their library.
  • 6


    Citations of this article.


Nonredundant and exhaustive generation of stereoisomers of a chemical compound with a specified constitution is one of the important tools for molecular structure elucidation and molecular design. In this paper, we deal with chemical compounds composed of carbon, hydrogen, oxygen and nitrogen atoms whose graphical structures are tree-like graphs because these compounds are most fundamental, and consider stereoisomers that can be generated by asymmetric carbon atoms and double bonds between two adjacent carbon atoms. Based on dynamic programming, we propose an algorithm of generating all stereoisomers without duplication. We treat a given tree-like graph as a tree rooted at its structural center. Our algorithm first computes recursively the numbers of stereoisomers of the subgraphs induced by the descendants of each vertex, and then constructs each stereoisomer by backtracking the process of computing the numbers of stereoisomers. Our algorithm correctly counts the number of stereoisomers in O(n) time and space, and correctly enumerates all the stereoisomers in O(n) space and in O(n) time per stereoisomer, where n is the number of atoms in a given structure. The source code of the program implementing the proposed algorithm is freely available for academic use upon request.

Author-supplied keywords

  • Chemical enumeration
  • Dynamic programming
  • Stereoisomers
  • Tree structured molecules

Get free article suggestions today

Mendeley saves you time finding and organizing research

Sign up here
Already have an account ?Sign in

Find this document


  • Tomoki Imada

  • Shunsuke Ota

  • Hiroshi Nagamochi

  • Tatsuya Akutsu

Cite this document

Choose a citation style from the tabs below

Save time finding and organizing research with Mendeley

Sign up for free