How to sort out the latest one from a series of numbers?

Hi,

I have a directory which contains a number of sub directories. They are named as 1.0.0, 1.0.1, 1.0.2...1.1.0..1.1.1...1.2.0..and so on..

Basically these are the tags created at the time of release. Tags are named as major.minor.buildnumber format for modules.
Now I have to search the latest tag from different modules.
For example
latest tag between 1.0.0, 1.0.1, 1.0.2 is 1.0.2
latest tag between 1.1.0, 1.1.1, 1.1.2, 1.1.3 is 1.1.3
latest tag between 1.2.0 is 1.2.0 only
latest tag between 2.0.0, 2.0.1 is 2.0.1

I have a command which identifies the latest tag out all these.

ls -ltr | awk '{print $9}' | sort -t\. -k 1n,1n -k 2n,2n -k 3n,3n

But I need to find out the tags individually for different modules.
Hope I am clear with my requirement. How to proceed any idea? Thanks in advance.

I could not get what you want...
Please provide one example.

Something like that?

ls -R | awk -F. '/^[0-9].[0-9].[0-9]$/{a[$1FS$2]=$0;next}END{for(i in a)print a}'