Determination of equivalence classes of atoms in molecules and the unique n
umbering for the molecular graphs are of major interest for many structure
processing tasks and many programs have been reported for this purpose. Mos
t of them were based on the use of graph invariants, but such methods repor
tedly failed to give correct partitioning for certain structures and the on
ly theoretically rigorous method is based on atom-by-atom matchings(1) whic
h was considered to be computationally impractical. In order to avoid the f
ailures of partitioning and the time-consuming atom-by-atom matching, on th
e basis of a profound analysis on the mechanism of Morgan algorithm, this w
ork proposed two improvements for the original Morgan algorithm. The first
improvement is to avoid the oscillatory behavior of Morgan algorithm. The s
econd improvement referred to as single-vertex Morgan algorithm, is to deco
mpose the Morgan algorithm into single-vertex processing. By incorporating
these improvements, an effective topological symmetry perception and unique
numbering algorithms were devised. The high performance of these algorithm
s is demonstrated with some graphs that are difficult to partition.