婆家一码一肖资料
前序遍历、中序遍历和后序遍历是二叉树的三种常用遍历方式。以下是这三种遍历方式的C++实现:
#include <iostream> using namespace std; // 二叉树节点的定义 struct TreeNode { int val; TreeNode* left; TreeNode* right; TreeNode(int x) : val(x), left(nullptr), right(nullptr) {} }; // 前序遍历 void preorderTraversal(TreeNode* root) { if (root != nullptr) { cout << root->val << " "; // 访问当前节点 preorderTraversal(root->left); // 递归遍历左子树 preorderTraversal(root->right); // 递归遍历右子树 } } // 中序遍历 void inorderTraversal(TreeNode* root) { if (root != nullptr) { inorderTraversal(root->left); // 递归遍历左子树 cout << root->val << " "; // 访问当前节点 inorderTraversal(root->right); // 递归遍历右子树 } } // 后序遍历 void postorderTraversal(TreeNode* root) { if (root != nullptr) { postorderTraversal(root->香港宝典王中王资料介绍 left); // 递归遍历左子树 postorderTraversal(root->right); // 递归遍历右子树 cout << root->val << " "; // 访问当前节点 } } int main() { // 创建一棵二叉树 TreeNode* root = new TreeNode(1); root->left = new TreeNode(2); root->right = new TreeNode(3); root->left->left = new TreeNode(4); root->left->right = new TreeNode(5); // 输出各种遍历结果 cout << "Preorder Traversal: "; preorderTraversal(root); cout << endl; cout << "Inorder Traversal: "; inorderTraversal(root); cout << endl; cout << "Postorder Traversal: "; postorderTraversal(root); cout << endl; return 0; }
这个C++程序定义了一个简单的二叉树结构(),并实现了前序遍历、中序遍历和后序遍历的函数。在主函数中,创建了一棵二叉树并输出了这三种遍历方式的结果。
新澳门期期准免费-
评论列表