这是我到目前为止的代码:
public static int mode(int[][] arr) {
ArrayList<Integer> list = new ArrayList<Integer>();
int temp = 0;
for(int i = 0; i < arr.length; i ++) {
for(int s = 0; s < arr.length; s ++) {
temp = arr[i][s];
Run Code Online (Sandbox Code Playgroud)
关于如何[i][s]进入单维数组,我似乎陷入了困境.当我做一个print(temp)2D阵列的所有元素按顺序打印一次但无法弄清楚如何将它们放入1D阵列.我是新手:(
如何将2D数组转换为1D数组?
我正在使用的当前2D阵列是3x3.我试图找到2D阵列中所有整数的数学模式,如果该背景具有任何重要性.
好的,我再次陷入困境,这就是我所拥有的
public static int mode(int[][] arr) {
List<Integer> list = new ArrayList<Integer>();
List<Integer> Mode = new ArrayList<Integer>();
for (int i = 0; i < arr.length; i++) {
for (int j = 0; j < arr[i].length; j++) {
list.add(arr[i][j]);
}
}
for(int i = 0; i < list.size(); i ++) {
Mode.add((Mode.indexOf(i)+1));
}
System.out.println(Mode);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我想要做的是为了找到这个数组的数学模式,我打算做的是对于我在数组中遇到的每个数字,将相应的索引增加1,最终得到一个带有"tally"标记的新数组相应的索引,我不确定正在以正确的方式进行此操作我需要一个动态数组我假设为了达到任何可能遇到的数字,这样可以增长到我需要的任何大小,如果我的代码完整乱搞随意批评:)