排序二叉树 运行错误
  • 板块学术版
  • 楼主TLE_Forever
  • 当前回复0
  • 已保存回复0
  • 发布时间2021/1/2 10:41
  • 上次更新2023/11/5 05:19:21
查看原帖
排序二叉树 运行错误
286238
TLE_Forever楼主2021/1/2 10:41

rt

Code:

#include<cstdio>
using namespace std; 
struct node {
	int key;
	node *left,*right;
};
const int maxn=1001;
int n,a,b[maxn],top=0;
node* root=nullptr;
void insert(int x,node* cur=root) {
	if(cur==nullptr) {
		cur=new node;
		cur->key=x;
		cur->left=cur->right=nullptr;
		return;
	}
	if((cur->key)>x) insert(x,cur->left);
	else insert(x,cur->right);
}
void print(node* cur=root) {
	if(cur->left!=nullptr) print(cur->left);
	printf("%d ",cur->key);
	if(cur->right!=nullptr) print(cur->right);
}
int main() {
	freopen("test.in","r",stdin);
	scanf("%d",&n);
	for(int i=1;i<=n;i++) scanf("%d",&a),insert(a);
	print();
	return 0;
}

test.in中的输入数据是:

10
dbfegac
dfgebca

浅查问题出在print()里,好像是cur->xxx访问不了。

2021/1/2 10:41
加载中...