关注
楼主第二题能用你的样例测一下这个代码么,我用你的代码跑了一下,和我的输出是相同的,不知道错了哪个
样例。
import java.util.*; class Node {
String name; int parent; ArrayList<Node> children; Node() { this.children = new ArrayList<>(); }
} public class Mainb { public static void dfs(Node nodes, String s) { if (nodes.children.size() == 0) return; for (int i = 0; i < nodes.children.size(); i++) {
Node node = nodes.children.get(i); String s1; if (i != nodes.children.size() - 1)
s1 = s + "|"; else s1 = s + "`"; System.out.println(s1 + "-- " + node.name); if (node.children.size() > 0 && i != nodes.children.size() - 1) {
String ss = ""; if (s == "")
ss = s + " |"; else ss = s + "| "; dfs(node, ss); } else if (node.children.size() > 0 && i == nodes.children.size() - 1) {
String ss = ""; if (s == "")
ss = s + " "; else ss = s + " "; dfs(node, ss); }
}
} public static void main(String [] args) {
Scanner sc = new Scanner(System.in); int n = sc.nextInt(); Node [] nodes = new Node[n]; Node root; HashMap<Integer, Node> map = new HashMap<>(); for (int i = 0; i < n; i++) {
nodes[i] = new Node(); nodes[i].name = sc.next(); nodes[i].parent = sc.nextInt(); if (i == 0)
root = nodes[i]; map.put(i, nodes[i]); } for (int i = 1; i < n; i++) {
Node parent = map.get(nodes[i].parent); if (parent != null)
parent.children.add(nodes[i]); } for (int i = 0; i < n; i++) {
Collections.sort(nodes[i].children,new Comp()); }
System.out.println(nodes[0].name); String s = ""; dfs(nodes[0], s); }
} class Comp implements Comparator { public int compare(Object s11, Object s22) {
Node node1 = (Node) s11; Node node2 = (Node) s22; String s1 = node1.name; String s2 = node2.name; int n1 = s1.length(); int n2 = s2.length(); int min = Math.min(n1, n2); for (int i = 0; i < min; i++) { char c1 = s1.charAt(i); char c2 = s2.charAt(i); if (c1 != c2) {
c1 = Character.toUpperCase(c1); c2 = Character.toUpperCase(c2); if (c1 != c2) {
c1 = Character.toLowerCase(c1); c2 = Character.toLowerCase(c2); if (c1 != c2) { // No overflow because of numeric promotion return c1 - c2; }
}
}
} return n1 - n2; }
} /* 10 my-app -1 src 0 main 1 java 2 resources 2 webapp 2 test 1 java 6 resources 6 pom.xml 0 my-app |-- pom.xml `-- src |-- main | |-- java | |-- resources | `-- webapp `-- test |-- java `-- resources */
查看原帖
点赞 2
相关推荐
机械打工仔:还是那句话,它都这么对你了你还保护它干什么
点赞 评论 收藏
分享
06-21 17:53
华南师范大学 Java 点赞 评论 收藏
分享

点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 实习生的蛐蛐区 #
30845次浏览 224人参与
# 面试官是我前女友 #
106174次浏览 722人参与
# 计算机有哪些岗位值得去? #
10441次浏览 95人参与
# 说说你知道的学历厂 #
21983次浏览 134人参与
# 应届生,你找到工作了吗 #
16275次浏览 135人参与
# 你找工作的时候用AI吗? #
12419次浏览 135人参与
# 面试尴尬现场 #
18154次浏览 113人参与
# 电网笔面经互助 #
36079次浏览 351人参与
# 社会教会你的第一课 #
23972次浏览 300人参与
# 下班后的时间你怎么安排 #
5854次浏览 65人参与
# 哪一瞬间觉得自己长大了 #
5912次浏览 112人参与
# 你认为小厂实习有用吗? #
8693次浏览 92人参与
# 学历贬值真的很严重吗? #
21818次浏览 161人参与
# 职场中对你有帮助的书 #
17445次浏览 203人参与
# 简历当中有水分算不算造假? #
20653次浏览 245人参与
# 双非应该如何逆袭? #
188150次浏览 3408人参与
# 神州信息工作体验 #
15711次浏览 67人参与
# 哪些公司校招卡第一学历 #
61963次浏览 234人参与
# 现在前端的就业环境真的很差吗 #
294802次浏览 3571人参与
# 毕业旅行去哪玩儿 #
12336次浏览 133人参与