Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
99822 | 刘星辰liuxingchen | 前序遍历 | C++ | 解答错误 | 20 | 0 MS | 252 KB | 794 | 2023-08-23 21:35:29 |
#include<bits/stdc++.h> using namespace std; struct TreeNode { int data; TreeNode* leftChild; TreeNode* rightChild; TreeNode(int x):data(x),leftChild(nullptr),rightChild(nullptr){} }; void PreOrder(TreeNode* root) { if(root==nullptr) { return ; } cout<< root->data; cout<<" "; PreOrder(root->leftChild); PreOrder(root->rightChild); } TreeNode* Build(TreeNode* root,int x) { if(root==nullptr) { root=new TreeNode(x); } else if(x < root->data) { root->leftChild=Build(root->leftChild,x); } else if(x > root->data) { root->rightChild=Build(root->rightChild,x); } return root; } TreeNode* root=nullptr; int main() { int n; int x; cin>>n; while(n--) { cin>>x; root=Build(root,x); } PreOrder(root); return 0; }