重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁!
查看《购买须知》>>>
找答案首页 > 全部分类 > 求职面试
搜题
网友您好, 请在下方输入框内输入要搜索的题目:
搜题
题目内容 (请给出正确答案)
[主观题]

算法题: 设二叉树的存储结构采用二叉链表,并假设二叉树中结点的值互不相同。编写递归算法:在root为根的二叉树下,判断值为x的结点所在的层次。假设根结点所在层次为1,它的孩子结点层次为2,以此类推。如果没有找到值为x的结点,则返回0。

暂无答案
更多“算法题: 设二叉树的存储结构采用二叉链表,并假设二叉树中结点的值互不相同。编写递归算法:在root为根的二叉树下,判断值为x的结点所在的层次。假设根结点所在层次为1,它的孩子结点层次为2,以此类推。如…”相关的问题

第1题

试编写算法交换以二叉链表做存储结构的二叉树中所有结点的左、右子树。
点击查看答案

第2题

编写算法,将二叉树中每个结点所在的层次值置入相应的Level域。设二叉树采用二叉链表存放,该结点结构为[LC,Data,Level,RC]。
点击查看答案

第3题

已知二叉树T采用二叉链表结构存储,每个结点有三个字段:data,Lchild和Rchild。设计算法求出T的顺序存储结构A[1..n],并给出初始调用形式。要求:如某位置为空,将其置为null;如超出下标范围n则报错;最后返回实际的最大下标。如图所示为,l=15时一个二叉树及所对应的输出结果示例(空缺表示null)。输出结果(表结构的值和最大下标):maxsub=12(最大下标为12)。【合肥工业大学2001五、5(8分)】

点击查看答案

第4题

假设二叉树采用二叉链表存储结构存储,试设计一个算法,求出该二叉树中第一条最长的路径长度以及此路径上各结点的值。

点击查看答案

第5题

试编写一个判定二叉树是否为二叉排序树的算法,设此二叉树以二叉链表作存储结构,且树中结点的关键字均不同。

点击查看答案

第6题

设二叉树采用二叉链表作为存储结构。试用类Pascal语言实现按前序遍历顺序输出二又树中结点的非递归算法。要求定义所用结构。设栈已经定义:inits(S),empty(S),push(S,P),pop(S),top(S)分别为栈初始化,判栈空,入栈,出栈,看栈顶等操作。【北京工业大学1997二、1(10分)】

点击查看答案

第7题

以二叉链表为存储结构,分别写出求二叉树结点总数及叶子总数的算法。
点击查看答案

第8题

设二叉树以二叉链表方式存储,试完成下列问题的递归算...

设二叉树以二叉链表方式存储,试完成下列问题的递归算法。 设二叉树结点和二叉树结构体定义如下: typedef struct btnode { ElemType element; struct btnode* lchild, *rchild; }BTNode; typedef struct binarytree{ BTNode* root; }BinaryTree; (1)求一棵二叉树的高度; int Depth(BTNode *p) { int lh, rh; if (!p) return 0; lh = ______________; rh = _____________; if (lh > rh) return _________; else return ________; } int DepthofBT(BinaryTree Bt) { return ___________; } (2)求一棵二叉树中的结点个数; int Size(BTNode * p) { if (!p) return _____ ; else return Size(p->lchild)+______________+1; } int SizeofBT(BinaryTree Bt) { return ______________); } (3)交换一棵二叉树中每个结点的左、右子树。 void exchange ( BTNode * p) { if(!p) return; if ( p->lchild != NULL || p->rchild != NULL ) { temp = p->lchild; p->lchild = ____________; p->rchild = temp; exchange (___________ ); exchange ( p->rchild ); } } void exchange(BinaryTree *bt) { ____________________; }

点击查看答案

第9题

某张氏家族的族谱以二叉树来表示,如图所示,以二叉链表作为存储结构,编写一算法,在家谱中查找是否有张三这个人。

  

  解题思路:本题就是在一个二叉链表中查找指定的结点x的过程。可以利用二叉树的任意一种遍历方法进行查找。这里利用先序遍历方法,首先判断当前结点是否是要查找的结点,如果是,则查找成功,返回结点的地址;如果不是,则分别到它的左子树和右子树中进行查找。

点击查看答案

第10题

假设二叉树采用二叉链表的存储结构存储,请编写一个算法,求一个二叉树中的结点的最大值。要求: (1)提供以自然语言方式描述的算法设计思想。 (2)提供类C语言描述的算法。
点击查看答案
下载上学吧APP
客服
TOP
重置密码
账号:
旧密码:
新密码:
确认密码:
确认修改
购买搜题卡查看答案
购买前请仔细阅读《购买须知》
请选择支付方式
微信支付
支付宝支付
选择优惠券
优惠券
请选择
点击支付即表示你同意并接受《服务协议》《购买须知》
立即支付
搜题卡使用说明

1. 搜题次数扣减规则:

功能 扣减规则
基础费
(查看答案)
加收费
(AI功能)
文字搜题、查看答案 1/每题 0/每次
语音搜题、查看答案 1/每题 2/每次
单题拍照识别、查看答案 1/每题 2/每次
整页拍照识别、查看答案 1/每题 5/每次

备注:网站、APP、小程序均支持文字搜题、查看答案;语音搜题、单题拍照识别、整页拍照识别仅APP、小程序支持。

2. 使用语音搜索、拍照搜索等AI功能需安装APP(或打开微信小程序)。

3. 搜题卡过期将作废,不支持退款,请在有效期内使用完毕。

请使用微信扫码支付(元)
订单号:
遇到问题请联系在线客服
请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系在线客服
恭喜您,购买搜题卡成功 系统为您生成的账号密码如下:
重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁。
发送账号到微信 保存账号查看答案
怕账号密码记不住?建议关注微信公众号绑定微信,开通微信扫码登录功能
警告:系统检测到您的账号存在安全风险

为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!

- 微信扫码关注上学吧 -
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反上学吧购买须知被冻结。您可在“上学吧”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
- 微信扫码关注上学吧 -
请用微信扫码测试
选择优惠券
确认选择
谢谢您的反馈

您认为本题答案有误,我们将认真、仔细核查,如果您知道正确答案,欢迎您来纠错

上学吧找答案