gpt4 book ai didi

java - 在java中查找n个数组之间的公共(public)元素之和

转载 作者:搜寻专家 更新时间:2023-10-31 20:00:09 25 4
gpt4 key购买 nike

我有一个程序可以对两个数组的公共(public)元素求和。为此,我使用了两个 for 循环,如果我有三个,那么我可以使用三个 for 循环。但是如何对 n 个数组的公共(public)元素求和,其中 n 在运行时出现。

我不知道如何在运行时更改循环次数,或者是否有任何其他相关概念?

这是我尝试对两个数组求和的代码:

import java.util.Scanner;

public class Sample {
public static void main(String... args)
{
Scanner sc=new Scanner(System.in);
int arr1[]={1,2,3,4,5},arr2[]={4,5,6,7,8},sum=0;
for (int i=0;i<arr1.length;i++)
{
for (int j=0;j<arr2.length;j++)
{
if (arr1[i]==arr2[j])
{
sum+=(arr1[i]);
}
}
}
}
}

最佳答案

可以有不同的实现方式。您可以使用以下方法。这是伪代码

  1. 使用二维数组来存储数组。如果数组的数量为 n 且大小为 m,则数组将为 input[n][m]
  2. 使用ArrayList commonItems 来存储常用项。使用 input[0]
  3. 的元素启动它
  4. 现在遍历 i = 1 到 n-1 的数组。与每一个input[i]比较,每一步只存储commonItemsinput[i]的共同项。您可以通过将 input[i] 转换为列表并使用 retainAll 方法来实现。
  5. 在迭代结束时,commonItem 列表将只包含公共(public)数字。现在对这个列表的值求和。

关于java - 在java中查找n个数组之间的公共(public)元素之和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43327140/

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