树的先序遍历c++代码
时间: 2023-11-04 21:16:30 浏览: 42
以下是树的先序遍历的C++代码:
```c++
#include<iostream>
using namespace std;
//定义一个树的结构体
struct TreeNode{
int val;
TreeNode* left;
TreeNode* right;
TreeNode(int x): val(x), left(NULL), right(NULL) {}
};
void preOrder(TreeNode* root){
if(root == NULL){
return;
}
cout << root->val << " "; //输出当前节点的值
preOrder(root->left); //递归遍历左子树
preOrder(root->right); //递归遍历右子树
}
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 << "Pre-order traversal: ";
preOrder(root);
return 0;
}
```
输出结果:
```
Pre-order traversal: 1 2 4 5 3
```