Develop

To expand on the above, I wouldn't use recursion, I'd use iteration.  This avoids stack overflow potential on large/imbalanced trees and also (in my opinion) simplifies the implementation somewhat.