Java数组和子数组

时间:2016-11-19 13:20:53

标签: java arrays

在图片中我创建了一个数组,我给出了15作为参数。我已经在0到5之间插入了随机整数(包括在内)。

1)平原数量, 2)最宽的平面和 3)这个最宽的平面是数组的起点

如何用Java编程语言编写屏幕显示程序?

(例如,阵列为1 0 5 5 5 2 2 3 3 4 4 4 4 0 1.级别数为8.也就是说,通过采用相同的重复次数1,阵列变为子阵列与所有组件相同。最大的平面4 4 4 4是最大级别的数字4.最大的级别是数组中的前4个,第9个元素。)

请帮帮我。

代码:

public class Zehra {  
    public static void main(String args[]) {
        int N = Integer.parseInt(args[0]);  
        int[] x = new int[N];  

        for(int i=0; i<N; i++)  
            x[i] = (int)(Math.random()*6);  
        for(int i=0; i<N; i++)  
            System.out.print(x[i] + " ");  

        System.out.println(" ");  
    }  
}

enter image description here

1 个答案:

答案 0 :(得分:2)

不要指望周围的人为你编写代码。相反,我会试着引导你朝着正确的方向前进。迭代一次遍历数组,始终跟踪:

  • 当前相等元素运行的起始索引
  • 当前运行的值
  • 遇到的运行次数
  • 当前之前相等元素的最长运行的起始索引和长度。

每当遇到 not 的数字等于当前运行中的值时,您就会知道新的运行开始了。此时(a)在运行计数中加一(b)查看结束的运行是否长于前一个最长运行,如果是,则将其记录为新的最长运行,包括其起始索引和长度。循环结束后,记得计算最后一次运行并查看它是否比任何其他运行都长。