This doesn't answer your question directly, but if I'm inferring correctly that you're going to be jumping between directories a lot, you could use a terminal multiplexer like GNU Screen to keep the different directories open in different windows, and simply switch between them as needed. I personally use Byobu, which adds some functionality on top of screen.
As Wuffers mentioned above, autojump that can do this for you. It stores a database of previously visited directories and lets you use a command like j <a few letters in the directory path> to move to that directory. There is an additional command for autojump named jc that should meet your requirements. jc lets you jump to a previously visited subdirectory of the current working directory. So you only have to visit the directory once for this to work until you purge the autojump database. Also, you can also add it directly instead with autojump --add DIR (perhaps building the add list from a directory tree listing if needed).
In bash and *csh, there is the builtin commands 'pushd' and 'popd' that allow you to push directories onto a Last In First Out stack (with pushd [directory]) and then quickly change to the top directory in the stack using 'popd'. So, depending on how you loaded the stack, you might be able to quickly navigate between directories suitably well for this to be functional for you.