You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

代码在本地IDE运行正常但LeetCode编译报错(找不到Solution类)

解决LeetCode两数之和提交时的"cannot find symbol: class Solution"错误

问题根源

LeetCode的判题器会固定执行new Solution().twoSum(param_1, param_2)来调用解题逻辑,但你的代码中使用的类名是twoSumSolution,和判题器期望的Solution类名不匹配,导致编译器找不到目标类。

解决步骤

  1. 修改类名:将你的twoSumSolution类名改为Solution,注意Java类名首字母需大写,严格匹配判题器的要求。
  2. 精简提交代码:不需要提交带有main方法的TwoSum类,LeetCode只需要包含twoSum方法的Solution类即可,本地测试用的main方法可留在本地代码中,无需上传。

正确代码示例

public class Solution {
    public int[] twoSum(int[] nums, int target) {
        // 替换为你的两数之和实现逻辑
        for (int i = 0; i < nums.length; i++) {
            for (int j = i + 1; j < nums.length; j++) {
                if (nums[i] + nums[j] == target) {
                    return new int[]{i, j};
                }
            }
        }
        throw new IllegalArgumentException("No valid two sum solution");
    }
}

注意事项

  • LeetCode的Java题目对类名、方法签名有严格的格式要求,必须完全匹配题目给出的模板,不能自行修改类名、方法名或参数列表。
  • 本地IDE测试时可以保留额外的测试类,但提交时仅需提交符合要求的Solution类代码,多余的类会导致判题异常。

内容的提问来源于stack exchange,提问作者Ajit Patil

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 22:25:19