I find graphs and trees are common 'exercises' that people do when they try out a new language, but you usually won't be implementing stuff like this day to day. You'd be using a well tested library, not cooking one up yourself.
My advice would be to try and write some 'real world' code instead of programming kattas to get a feel for the language.