关注
//自己重新写了一个Java的,按Ctrl-z可以结束,基本思路是用位图来实现快速发现根节点。然后
//多叉树的存储为链表结构
import java.io.*;
import java.util.*;
class Node {
int val;
Node child;
Node next;
Node(int v) {
val = v;
child = null;
next = null;
}
}
public class Build {
public static void myTraverse(Node root){
Node p = root;
//hierarchy traverse
while(p != null){
//cur root
System.out.print(p.val + " ");
//siblings
while(p.next != null){
System.out.print(p.next.val + " ");
p = p.next;
}
//child
if(p.child != null){
p = p.child;
}
else{
break;
}
}
}
public static void main(String args[]) {
Scanner in = new Scanner(System.in);
//bitmap
//save every node
//find element quickly
Node[] arr = new Node[101];
for (int i = 0; i < 101; i++) {
arr[i] = null;
}
Node coreRoot = null;
int count = 0;
//Ctrl-z end input
while (in.hasNextLine()) {
String line = in.nextLine();
String strs[] = line.split("\\s+");
Node root = null;
for (int i = 0; i < strs.length; i++) {
int num = Integer.valueOf(strs[i]);
//cur root
if (i == 0) {
if (arr[num] == null) {
Node temp = new Node(num);
arr[num] = temp;
}
root = arr[num];
}
//this level siblings
else {
Node temp = null;
if (arr[num] == null) {
temp = new Node(num);
arr[num] = temp;
}
temp = arr[num];
Node p = root;
while (p.next != null) {
p = p.next;
}
p.next = temp;
}
}
//core root
if (count == 0) {
coreRoot = root;
}
count += 1;
}
myTraverse(coreRoot);
}
}
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 校招生月薪1W算什么水平 #
34079次浏览 188人参与
# 哪一瞬间觉得自己长大了 #
38175次浏览 493人参与
# “vivo”个offer #
38756次浏览 280人参与
# 如果上班像打游戏,你最想解锁什么技能 #
8102次浏览 70人参与
# vivo工作体验 #
27865次浏览 124人参与
# 为了实习逃课值吗? #
28557次浏览 270人参与
# 工作后明白的那些道理 #
21675次浏览 225人参与
# 一人一个landing小技巧 #
123822次浏览 1441人参与
# 我是面试官,请用一句话让我破防 #
26528次浏览 128人参与
# 实习最想跑路的瞬间 #
87408次浏览 542人参与
# 中美关税战对我们有哪些影响 #
42926次浏览 361人参与
# 机械制造2023笔面经 #
149509次浏览 840人参与
# 如果重来一次你还会读研吗 #
201562次浏览 1932人参与
# AI时代,哪些岗位最容易被淘汰 #
3297次浏览 27人参与
# 中美关系回暖,你会选择出海吗? #
6617次浏览 107人参与
# 华为保温 #
107575次浏览 407人参与
# 哪些行业值得去? #
5305次浏览 50人参与
# i人适合做什么工作 #
11340次浏览 97人参与
# 美团开奖 #
222165次浏览 1146人参与
# 读研or工作,哪个性价比更高? #
78193次浏览 768人参与
# 如果秋招能重来,我会____ #
37347次浏览 300人参与
