提示,二叉树的第n层可以用数组的第2^(n-1)~2^n-1表示。定义一个二叉树,并且实现对它的遍历。
1条回答 默认 最新
- threenewbee 2015-01-18 05:42关注
struct node { int l,r; }; struct node tree[100]; int path[100]; int ans; void init() { int i; ans = 0; for(i = 0 ; i < 100 ; i ++ ) tree[i].l = tree[i].r = -1,path[i] = -1; } void preOrderTree(int root) { if(root == -1 ) return ; path[ans++] = root; preOrderTree(tree[root].l); preOrderTree(tree[root].r); } int main() { int T,i,n; int root,a,b,c; scanf("%d",&T); while(T--) { init(); scanf("%d",&n); scanf("%d",&root); for(i = 0 ; i < n -1; i ++) { scanf("%d%d%d",&a,&b,&c); if(c == 0) { tree[a].l = b; } else { tree[a].r = b; } } preOrderTree(root); for(i = 0 ; i < n ; i ++) printf("%d%c",path[i],i' ':'/n'); } return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 metadata提取的PDF元数据,如何转换为一个Excel
- ¥15 关于arduino编程toCharArray()函数的使用
- ¥100 vc++混合CEF采用CLR方式编译报错
- ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
- ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
- ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
- ¥50 如何openEuler 22.03上安装配置drbd
- ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
- ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
- ¥15 Windows11, backspace, enter, space键失灵