Add preorder traverse via stack without recursion