add tree preorder traverse without recursion