gpt4 book ai didi

java - 没有找到合适的方法 addAll(List)

转载 作者:行者123 更新时间:2023-12-02 04:16:13 25 4
gpt4 key购买 nike

以下是我的LeetCode二叉树层次顺序遍历题的代码。它在第 24 行给出了编译错误,因为没有找到适合 addAll(List) 的方法,所以我理解这是因为 addAll(Collections c) 没有为抽象类型(即列表)定义,但是当我将 thisLevel 的声明更改为 ArrayList 时,我仍然遇到同样的错误。

为什么以及如何修改以下内容才能使其成为有效的作业?

/**
* Definition for a binary tree node.
* public class TreeNode {
* int val;
* TreeNode left;
* TreeNode right;
* TreeNode(int x) { val = x; }
* }
*/
public class Solution {
public List<List<Integer>> levelOrder(TreeNode root) {
List<List<Integer>> result=new ArrayList<List<Integer>>();
if(root==null) return result;
LinkedList<TreeNode> parents=new LinkedList<TreeNode>();
List<TreeNode> children=new LinkedList<TreeNode>();
parents.add(root);
List<Integer> thisLevel=new ArrayList<Integer>();
while(parents.size()!=0 || children.size()!=0){
TreeNode p=parents.remove();
thisLevel.add(p.val);
if(p.left!=null) children.add(p.left);
if(p.right!=null) children.add(p.right);
if(parents.size()==0) {
result.addAll(thisLevel);
thisLevel=new ArrayList<Integer>();
parents=children;
children= new LinkedList<TreeNode>();
}
}
return result;
}
}

LeetCode Question URL

最佳答案

问题是您正在尝试添加 List<Integer> 的所有元素到 List<List<Integer>> 。自 Integer不是List<Integer> ,无法编译。

关于java - 没有找到合适的方法 addAll(List<Integer>),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33289146/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com