请用递归和非递归俩种方法实现二叉树的前序遍历。

来源:互联网 发布:软件测试项目心得体会 编辑:程序博客网 时间:2024/05/16 06:03
//递归前序遍历void pre_visit(TNode* root) {if (!root)return;cout << root->data << ' ';pre_visit(root->left);pre_visit(root->right);}//非递归前序遍历void pre_visit1(TNode* root) {if (!root) {cout << "空树" << endl;return;}stack<TNode*> stk;while (root || !stk.empty()) {while (root) {cout << root->data << ' ';stk.push(root);root = root->left;}root = stk.top();stk.pop();root = root->right;}}

0 0
原创粉丝点击