【发布时间】:2021-01-29 02:42:27
【问题描述】:
如果我有一个字符串路径列表
Mammal/
Mammal/Pet/
Mammal/Pet/Dog/
Mammal/Pet/Cat/
Bird/
Bird/Blah/
Bird/Blah/Parrot/
Bird/Blah/Parrot/Feather/
我只想要孩子最多的元素
Mammal/Pet/Dog/
Mammal/Pet/Cat/
Bird/Blah/Parrot/Feather/
我怎样才能比现在做得更好?
我当前的代码写得不是很好,但它确实有效
List<String> paths = ...;
List<String> children = new ArrayList<String>();
if(paths.size()==1){children.add(paths.get(0));}
for(int i=1; i < paths.size(); i++){
//Found a local maximum in number of "/"'s
if(paths.get(i).split("/").length <= paths.get(i-1).split("/").length){
children.add(paths.get(i-1));
}
else if(i==paths.size()-1){
children.add(paths.get(i));
}
}
【问题讨论】:
-
你写的字符串随机出现会怎样?