* // This is the interface that allows for creating nested lists. * // You should not implement it, or speculate about its implementation * public interface NestedInteger { * * // @return true if this NestedInteger holds a single integer, * // rather than a nested list. * public boolean isInteger(); * * // @return the single integer that this NestedInteger holds, * // if it holds a single integer * // Return null if this NestedInteger holds a nested list * public Integer getInteger(); * * // @return the nested list that this NestedInteger holds, * // if it holds a nested list * // Return null if this NestedInteger holds a single integer * public List<NestedInteger> getList(); * } */ publicclass{
// @param nestedList a list of NestedInteger // @return a list of integer public List<Integer> flatten(List<NestedInteger> nestedList){ // Write your code here List<Integer> res=new ArrayList<>(); res=tree(res,nestedList); return res; } public List<Integer> tree(List<Integer> res,List<NestedInteger> nestedList) { //if(nestedList==null||nestedList.isEmpty()) //return null; for(NestedInteger item:nestedList) { if(item.isInteger()) { res.add(item.getInteger()); } else { tree(res,item.getList()); } } return res; } }
近期评论