听灌多(壶关QAQ
  • 板块灌水区
  • 楼主封禁用户
  • 当前回复6
  • 已保存回复6
  • 发布时间2024/7/28 10:04
  • 上次更新2024/7/28 11:15:24
查看原帖
听灌多(壶关QAQ
780747
封禁用户楼主2024/7/28 10:04

哪里错了?

#include<bits/stdc++.h>
#include<queue>
using namespace std; 

struct TreeNode{
	int val;
	TreeNode *left;
	TreeNode *right;
	TreeNode(int x): val(x),left(nullptr),right(nullptr){}
};
TreeNode *buildTree(vector<int> &nums,int index){
	if(index >= nums.size()||nums[index]<0){
		return nullptr;
	}
	TreeNode *root= new TreeNode(nums[index]);
	root->left=buildTree(nums,2*index+1);
	root->right= buildTree(nums,2*index+2);
	
	return root;
}
void coutTree(vector<int> res){
	for(auto i : res)cout<<i<<" ";
	cout<<endl;
}
void inorder_1(TreeNode *root,vector<int> &res_1){
	if(!root)return ;
	res_1.push_back(root->val);
	inorder_1(root->left,res_1);
	inorder_1(root->right,res_1);
}
void inorder_2(TreeNode *root,vector<int> &res_2){
	if(!root)return ;
	inorder_2(root->left,res_2);
	res_2.push_back(root->val);
	inorder_2(root->right,res_2);
}
void inorder_3(TreeNode *root,vector<int> &res_3){
	if(!root)return ;
	inorder_3(root->left,res_3);
	inorder_3(root->right,res_3);
	res_3.push_back(root->val);
}
void inorderTraversal(TreeNode *root){
	vector<int> res_1;
	vector<int> res_2;
	vector<int> res_3;
	inorder_1(root,res_1);
	coutTree(res_1);
	
	inorder_2(root,res_2);
	coutTree(res_2);
	
	inorder_3(root,res_3);
	coutTree(res_3);
}
int main() 
{
	long long i,k,n;
	cin>>n;
	vector<int> nums;
	for(i=0;i<n;i++){
	    cin>>k;
		nums.push(k);	
	}
	TreeNode *root = buildTree(nums,0);
	inorderTraversal(root);
	system("pause");
    return 0;
}

为什么Dev-C++运行不了会报错

2024/7/28 10:04
加载中...