same tree using recursive, iterative using queue and stack