gpt4 book ai didi

java - 如何通过在java中的空位置添加零来使两个不相等的二维数组相等?

转载 作者:行者123 更新时间:2023-12-02 10:49:40 26 4
gpt4 key购买 nike

假设我的矩阵 A 的阶数为 3 x 2,矩阵 B 的阶数为 2 x 4。我的结果矩阵应为 3 x 4 的阶数,并且应包含矩阵 A 和矩阵 B 的相加。为了实现这一点,我必须首先通过附加必要的零来使矩阵 A 和矩阵 B 大小相等(两者都应该是 3 x 4)。

示例:-

int[][] a = { {1,0}, {1,1}, {1,0} }; 
int[][] b = { {1,1,0,1}, {1,1,1,1} };

sumArray(a,b) 将返回:{ {2,1,0,1}, {2,2,1,1}, {1,0,0,0} }

我尝试过的是。 (ans.length表示得到的矩阵长度)

for(int i =0;i<ans.length;i++)
{
for(int j=0;j<ans[i].length;j++)
{
if(arr1[i][j] == null)
{
arr1[i][j]= 0;
}
if(arr2[i][j] == null)
{
arr2[i][j]= 0;
}
}
}

最佳答案

首先,您必须找到输出数组的大小。

int h = a.length>b.length?a.length:b.length;
int w = a[0].length>b[0].length?a[0].length:b[0].length;
int[][] result = new int[h][w];

然后做作业。

for(int i = 0; i<result.length; i++){
for(int j = 0; j<result[i].length; j++){
if(i<a.length && j < a[i].length){
result[i][j] += a[i][j];
}
if(i<b.length && j < b[i].length){
result[i][j] += b[i][j];
}

}
}
return result;

关于java - 如何通过在java中的空位置添加零来使两个不相等的二维数组相等?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52275772/

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