1367:查找二叉树(tree_a)

时间限制: 1000 ms         内存限制: 65536 KB
提交数: 3778     通过数: 2326

【题目描述】

已知一棵二叉树用邻接表结构存储,中序查找二叉树中值为x的结点,并指出是第几个结点。例:如图二叉树的数据文件的数据格式如下:

【输入】

第一行n为二叉树的结点个树,n<=100;第二行x表示要查找的结点的值;以下第一列数据是各结点的值,第二列数据是左儿子结点编号,第三列数据是右儿子结点编号。

【输出】

一个数即查找的结点编号。

【输入样例】

7
15
5 2 3
12 4 5
10 0 0
29 0 0
15 6 7
8 0 0
23 0 0

【输出样例】

4
#include<cstdlib>
#include<iostream>
using namespace std;
int i,n,x,rt,k=0;//k为遍历节点数
struct cyx{int data,left,right;};
cyx tree[1001];bool sh[1001];
void in(int root)
{   //中序遍历查找 if(tree[root].left>0)in(tree[root].left);k++;//中序遍历左子树 if(tree[root].data==x){cout<<k;exit(0);}//找到后输出并退出 if(tree[root].right>0)in(tree[root].right);//中序遍历右子树
}
int main()
{cin>>n>>x;for(i=1;i<=n;i++){cin>>tree[i].data>>tree[i].left>>tree[i].right;sh[tree[i].left]=1,sh[tree[i].right]=1;//不是树根 }for(i=1;i<=n;i++)if(!sh[i]){rt=i;break;}//找树根 in(rt);//查找 return 0;
}

1367 查找二叉树(tree_a)相关推荐

  1. 信息学奥赛一本通 1367:查找二叉树(tree_a)

    [题目链接] ybt 1367:查找二叉树(tree_a) 可以默认各结点的值是不同的. [题目考点] 1. 二叉树 中序遍历 [解题思路] 中序遍历的同时做计数,判断当前遍历到的结点的值是不是x,如 ...

  2. 1367:查找二叉树(tree_a)

    http://ybt.ssoier.cn:8088/problem_show.php?pid=1367 [题目描述] 已知一棵二叉树用邻接表结构存储,中序查找二叉树中值为x的结点,并指出是第几个结点. ...

  3. 1367:查找二叉树

    [题目描述] 已知一棵二叉树用邻接表结构存储,中序查找二叉树中值为x的结点,并指出是第几个结点.例:如图二叉树的数据文件的数据格式如下: [输入] 第一行n为二叉树的结点个树,n<=100:第二 ...

  4. 【算法与数据结构】查找二叉树的实现

    (转载请注明出处:http://blog.csdn.net/buptgshengod) 1.题目介绍     二叉树是一种基本的数据结构.查找二叉树是一种方便与查找,删除,插入等功能的二叉树,它要求每 ...

  5. 查找二叉树(信息学奥赛一本通-T1367)

    [题目描述] 已知一棵二叉树用邻接表结构存储,中序查找二叉树中值为x的结点,并指出是第几个结点.例:如图二叉树的数据文件的数据格式如下: [输入] 第一行n为二叉树的结点个树,n≤100:第二行x表示 ...

  6. 算法不会,尚能饭否之对分查找二叉树(又为快速排序之二叉树实现)

    快速排序,可以以数组的形式实现,也可以用二叉树的形式实现,而我的这篇博文,正好 讲的是用二叉树的形式实现的.这种二叉树,又叫对分查找二叉树,在实际的应用中是不胜枚 举的.废话少说,代码贴上,算法比较简 ...

  7. 华为OD机试用Python实现 -【查找树中的元素 or 查找二叉树节点】(2023-Q1 新题)

    华为OD机试题 华为OD机试300题大纲 查找树中的元素 or 查找二叉树节点 题目描述 输入描述 输出描述 说明 示例一 输入 输出 示例二 输入 输出 Python 代码实现 代码编写思路 华为O ...

  8. 查找二叉树(BST)

    1.查找二叉树的定义 先上图: 一棵二叉搜索树(Binary Sort Tree)是以一棵二叉树来组织的,可以用链表数据结构来表示,其中,每一个结点就是一个对象,一般地,包含数据值和指向孩子(也可能是 ...

  9. C++数据结构和算法2 栈 双端/队列 冒泡选择插入归并快排 二三分查找 二叉树 二叉搜索树 贪婪 分治 动态规划

    C++数据结构和算法2 栈 双端/队列 冒泡选择插入归并快排 二三分查找 二叉树 二叉搜索树 贪婪 分治 动态规划 博文末尾支持二维码赞赏哦 _ github 章3 Stack栈 和 队列Queue= ...

最新文章

  1. python多维字符数组_python多维数组内找指定字符串
  2. .NET(C#) Internals: 以一个数组填充的例子初步了解.NET 4.0中的并行(一)
  3. iOS和android的屏幕适配
  4. keepalived的安装与添加服务
  5. linux卸载nomachine,NoMachine 安装与配置及使用
  6. gateway网关_SpringCloud技术指南系列(十二)API网关之Gateway使用
  7. 学地球物理的如何搞好软件开发
  8. A. Raising Bacteria
  9. linux web目录安全设置,[LNMP]Linux的Web环境的安全配置
  10. 如何查看linux 版本
  11. 百度云的高速下载技巧系列4---Village(原名山寨云)(安卓)
  12. CAN通信协议(一)
  13. spring中注解及原理
  14. android输入法剪切板历史记录,干货分享 讯飞输入法剪切板使用技巧知多少
  15. 车载测试-HIL硬件在环测试
  16. Pathfinding 模板题 /// BFS oj21413
  17. 记录第一次因为技术出差(自嘲一番吧)
  18. linux64x gtx970,NVIDIA英伟达显卡驱动460.67版For Linux x64(2021年3月19日发布)
  19. spring源码分析之BeanDefinition相关
  20. 【总结】56个JavaScript 实用工具函数助你提升开发效率!

热门文章

  1. 客户端与服务器端的区别
  2. 多数据库应用加强,增加表枚举约定数据库链接配置
  3. 论计算机的维修策略论文,论计算机的维护维修策略(论文).doc
  4. [jni] [android] 用C++开发安卓程序
  5. [车联网安全自学篇] Android安全之移动安全测试指南「安全测试和SDLC」
  6. 远距离WiFi模块,无人机传输技术,无线通信视频传输技术
  7. 国庆旅游3天,Python 把我的疲倦治愈了
  8. 事无巨细的Steam饥荒联机云服搭建教程(阿里云;CentOS7.7)【更新至后台运行】
  9. 2020 年最佳流行 Python 库 Top 10
  10. java毕业生设计东理咨询交流论坛计算机源码+系统+mysql+调试部署+lw