首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
牛客232444207号
暨南大学 产品经理
发布于陕西
关注
已关注
取消关注
@DavidSperk:
二叉树的广度优先遍历
标题:二叉树的广度优先遍历 | 时间限制:1秒 | 内存限制:262144K | 语言限制:不限 有一棵二叉树,每个节点由一个大写字母标识(最多26个节点)。现有两组字母,分别表示后序遍历(左孩子->右孩子->父节点)和中序遍历(左孩子->父节点->右孩子)的结果,请输出层次遍历的结果。 import java.util.LinkedList;import java.util.Queue;import java.util.Scanner;public class Main { // 构造树的节点 static class TreeNode { char data; TreeNode left; TreeNode right; } //初始化先序遍历数组 static char pre[] = new char[50]; //初始化中序遍历数组 static char in[] = new char[50]; //初始化后序遍历数组 static char post[] = new char[50]; // 本题中是根据中序和后序的遍历来构造 static TreeNode creat(int postL, int postR, int inL, int inR) { // 后序遍历中找到根节点 if (postL > postR) { return null; } TreeNode root = new TreeNode(); root.data = post[postR]; int k = 0; for (int j = inL; j <=inR; j++) { if (in[j] == post[postR]) { k = j; break; } } //中序遍历记录下标记录根节点root在中序遍历中的下标 int cha = k - inL; // 遍历左子树 root.left = creat(postL, postL + cha - 1, inL, k - 1); // 遍历右子树 root.right = creat(postL + cha, postR - 1, k + 1, inR); return root; } // 层次遍历用BFS方法 static void bfs(TreeNode root) { Queue<TreeNode> queue = new LinkedList<TreeNode>(); queue.add(root); while (!queue.isEmpty()) { TreeNode v = queue.remove(); System.out.print(v.data); if (v.left != null) { queue.add(v.left); } if (v.right != null) { queue.add(v.right); } } } public static void main(String[] args) { Scanner sc = new Scanner(System.in); String input = sc.nextLine(); String s1 = input.split(" ")[0]; String s2 = input.split(" ")[1]; // 获取输入结点个数 int number = s1.length(); for (int i = 0; i < number; i++) { post[i] = s1.charAt(i); in[i] = s2.charAt(i); } // 建树 TreeNode root = creat(0, number - 1, 0, number - 1); // 层次遍历输出结点data bfs(root); }} class TreeNode: def __init__(self,value): self.left = None self.right = None self.value = value def TreeFunc(pStr,qStr): if len(pStr) == 0: return None t = TreeNode(pStr[-1]) i = qStr.index(pStr[-1]) qRight = qStr[i+1:] qLeft = qStr[:i] pLeft = pStr[:len(qLeft)] pRight = pStr[len(pLeft):-1] t.right = TreeFunc(pRight, qRight) t.left = TreeFunc(pLeft, qLeft) return tif __name__ == '__main__': inputStr = input().strip() inputList = inputStr.split() pStr = inputList[0] qStr = inputList[1] t = TreeFunc(pStr, qStr) temStr = '' temList = [] temList.append(t) while (len(temList)>0): t = temList[0] temList.pop(0) if (t is not None): temStr += t.value temList.append(t.left) temList.append(t.right) print(temStr)
点赞 0
评论 0
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
08-01 13:27
门头沟学院 Java
如何包装简历上的经历
前言作为一个二本烂仔,校招最窝囊的时候不是面试没面过,而是根本不给面试机会,忆惜当年泪不干,二本简历没人翻。刚开始写简历的时候纯实话实说,一就是一二就是二,后来混迹江湖多年,发现哪有真事啊。工资流水都p,别说简历了。实习经历校招的时候可能很多同学没有过实习经历,整个简历显得很单调,初筛的时候很容易被刷掉,这种情况应该怎么包装呢。两个思路:捏造一段公司经历,这里要看你胆子大不大,不建议写大厂实习经历,容易被检查实习证明,写小公司的话校招很少有做背调的,如果有,也就是打给你提供的实习公司HR电话问一问情况。电话写谁的完全可以自己操作,所以可以找个合适的小公司适当的编一下。根据实验室老师为基础编造一...
简历中的项目经历要怎么写
点赞
评论
收藏
分享
08-01 15:40
已编辑
门头沟学院 客户端其它
想把公司炸了!!!
我女朋友来找我了,但是我项目节点要交付,TMD,最近天天加班,身心俱疲,所以,我在此收集花花和点赞。花花破50,点赞破100,我给大家表演一个炸公司
码农索隆:
很好,我周六也来加班了,草
牛友故事会
点赞
评论
收藏
分享
07-08 20:34
宁夏理工学院 软件测试
25应届生
是我简历有问题吗?求评
程序员小白条:
学历GG,这个排版布局,还有行间距和字缩进不大行,女生自我要求应该更高才是,没内容,起码美观这块要做好
投了多少份简历才上岸
点赞
评论
收藏
分享
07-29 13:58
门头沟学院 Java
终于拿到了提前批第一个offer!!!
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
百度提前批,三面被推迟一周,喜提秋招第一凉
7445
2
...
虾皮秋招一面
3077
3
...
他拿大厂SSP Offer打牌是什么概念啊?25届双非之光
2707
4
...
百度提前批 三面
2525
5
...
小鹏offer
1530
6
...
被猿辅导挂了简历,但我想说...
1418
7
...
虾皮一面凉经
1376
8
...
最强本科✌
1305
9
...
上班一周,工资还没拿,先欠公司两千
1254
10
...
大学四年,我感觉我像个“孤勇者”
1165
创作者周榜
更多
正在热议
更多
#
简历上的经历如何包装
#
29528次浏览
821人参与
#
秋招被确诊为……
#
164125次浏览
751人参与
#
中兴秋招
#
205705次浏览
2295人参与
#
工作中哪个瞬间让你想离职
#
63665次浏览
569人参与
#
你最希望上岸的公司是?
#
135199次浏览
705人参与
#
和同事相处最忌讳的是__
#
24419次浏览
244人参与
#
25届网易互娱暑实进度
#
78428次浏览
702人参与
#
虾皮求职进展汇总
#
249446次浏览
1856人参与
#
投格力的你,拿到offer了吗?
#
86776次浏览
583人参与
#
2022毕业即失业取暖地
#
102710次浏览
662人参与
#
2022毕业生求职现身说法
#
89289次浏览
700人参与
#
秋招OC许愿
#
327815次浏览
2450人参与
#
你最近一次加班是什么时候?
#
71004次浏览
350人参与
#
26届的你,投了哪些公司?
#
45238次浏览
497人参与
#
你的秋招第一面感觉怎么样
#
76920次浏览
591人参与
#
柠檬微趣工作体验
#
6737次浏览
40人参与
#
你遇到最难的面试题目是_
#
16657次浏览
201人参与
#
我对___祛魅了
#
48504次浏览
441人参与
#
地平线求职进展汇总
#
52652次浏览
370人参与
#
研究所VS国企,该如何选
#
194833次浏览
1819人参与
#
如果校招重来我最想改变的是
#
271905次浏览
2853人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务