Tree inorder traversal Iterator
TreeNode a;
while (a.hasNext())
visit(a.next());
}"
问:给TreeNode写Iterator,使得以上代码可以in order traversal
class TreeNode { TreeNode *root; public: bool hasNext() { return root!=NULL || !stack.empty(); } TreeNode * next() { TreeNode * ret = NULL; while(hashNext()) { if(root) { stack.push(root); root = root->left; } else { root = stack.top(); stack.pop(); ret = root; root = root->right; return ret; } } return NULL; } };
posted on 2014-11-24 07:28 fatemaster 阅读(145) 评论(0) 收藏 举报