I am interested in learning about algorithms.
I have taken algorithms course, but didn't feel I really learned as much as I would have loved to. I am looking for some interesting software which I can build, which involves a good subset of all the important algorithms like B-trees, kd-trees, union-find, graph algorithms etc. may be involves some dynamic programming. Obviously it is not going to be something trivial. But I am ready to spend some time everyday to build this software. I feel this way I can appreciate algorithms and good software engineering. I am open to all kinds of suggestions.