当前位置: 首页 > 知识库问答 >
问题:

Java语言中set matrix zero代码中的运行时错误消息

周凯捷
2023-03-14

我得到了这个错误当我运行这个代码我不知道如何解决这个问题

运行时错误消息:

警告:命令行选项已启用安全管理器

警告:安全管理器已弃用,将在将来的版本中删除

JAVAlang.ArrayIndexOutOfBoundsException:索引1超出长度1的界限

在第14行,解决方案。设置零

在第54行,驾驶员解决方案。帮手

在84号线,司机。主要的

最后执行的输入:

[[1],[0]]

该守则是:

class Solution {
public void setZeroes(int[][] matrix) {
        boolean firstColumnZero = false;
        boolean firstRowZero = false;
        
        for(int i=0;i<matrix.length;i++){
            if(matrix[i][0]==0){
                firstColumnZero = true;
                break;
            }
        }
        
        for(int i=0;i<matrix.length;i++){
            if(matrix[0][i]==0){
                firstRowZero = true;
                break;
            }
        }
        for(int i=0;i<matrix.length;i++){
            for(int j=0;j<matrix[0].length;j++){
                if(matrix[i][j]==0){
                    matrix[i][0]=0;
                    matrix[0][j]=0;
                }
            }
        }
            
        for(int i=1;i<matrix.length;i++){
            for(int j=1;j<matrix[0].length;j++){
                if(matrix[i][0]==0||matrix[0][j]==0){
                    matrix[i][j]=0;
                }
            }
        }
        
        if(firstColumnZero){
            for(int i=0;i<matrix.length;i++){
                matrix[i][0]=0;
            }
        }
    if(firstRowZero){
        for(int i=0;i<matrix[0].length;i++){
            matrix[0][i]=0;
        }
    }
}

}

输出为:

认可的

运行时间:0 ms

你的投入

[[1,1,1],[1,0,1],[1,1,1]]

[[0,1,2,0],[3,4,5,2],[1,3,1,5]]

输出

[[1,0,1],[0,0,0],[1,0,1]

[[0,0,0,0],[0,4,5,0],[0,3,1,0]]

预期

[[1,0,1],[0,0,0],[1,0,1]

[[0,0,0,0],[0,4,5,0],[0,3,1,0]]

共有1个答案

庞瀚
2023-03-14

以下代码可能是您的问题:

for ( int i = 0; i < matrix.length; i++ )
{
    if ( matrix[0][i] == 0 )
    {
        firstRowZero = true;
        break;
    }
}

您需要将for语句更改为:

for ( int i = 0; i < matrix[0].length; i++ )
 类似资料:
  • 主要内容:net 包中的例子,错误接口的定义格式,自定义一个错误,示例:在解析中使用自定义错误Go语言的错误处理思想及设计包含以下特征: 一个可能造成错误的函数,需要返回值中返回一个错误接口(error),如果调用是成功的,错误接口将返回 nil,否则返回错误。 在函数调用后需要检查错误,如果发生错误,则进行必要的错误处理。 Go语言没有类似 Java 或 .NET 中的异常处理机制,虽然可以使用 defer、panic、recover 模拟,但官方并不主张这样做,Go语言的设计者认为其他

  • 我在这里使用了这段Java代码,当我试图用https下载一个带有谷歌磁盘共享链接的文件时,我得到了一个错误: 我必须把它放在代码的什么地方,如果我以后在Windows PC上运行它怎么办?

  • 问题内容: [不重复类似的问题,如下面进一步解释的那样] 从Jenkins内部运行XCodeBuild时,出现代码签名错误,但可以从命令行或Xcode内部生成。 过去有几个人遇到过这个问题,他们的共同主题是Jenkins在启动时以守护程序用户身份运行,因此尝试访问系统钥匙串。人们应用的解决方案是将凭据复制到系统钥匙串,或者运行命令来设置要使用的钥匙串。 但是,就我而言,如果我查看活动管理器中的启动

  • 问题内容: 在最终设法使我的代码可以用OpenCL编译之后,我似乎无法使输出二进制文件运行!这是在运行Kubuntu 13.10 x64的Linux笔记本电脑上 我得到的错误是(从cl :: Error打印): 我将自己添加到视频组中,但这似乎不起作用。 关于ICD配置文件…我不确定该怎么做-cuda工具箱中是否应该包含此文件?如果没有,我可以在哪里下载? 编辑 :看来我的系统在/usr/shar

  • 我刚刚开始学习Javascript。我决定最好使用vscode,因为我在其他编程项目中使用它。但是当我做一个我知道是正确的简单语句时,例如“console.log('hello world')”,它就会给出错误消息。类似于文件“c:\Program Files\Python39\lib\run.py.py”,第197行,_run_module_as_main。我尝试制作一个新的JavaScript

  • 问题内容: 是否可以编写一个在终止程序时System.exit将调用的方法? 问题答案: 使用。