Java 数组中最大递增数列的计数
我必须找到这个数组中的最大递增数序列。 有人知道我的代码为什么不运行吗Java 数组中最大递增数列的计数,java,arrays,Java,Arrays,我必须找到这个数组中的最大递增数序列。 有人知道我的代码为什么不运行吗 public class Array { public static void main(String[] args) { int[] a = {4,7,15,3,9,22,36,24,28,14,19,27,30,31,2,9,29,30,16,19}; int counter = 0; int maxCounter = 0; for (int i : a) { i
public class Array {
public static void main(String[] args) {
int[] a = {4,7,15,3,9,22,36,24,28,14,19,27,30,31,2,9,29,30,16,19};
int counter = 0;
int maxCounter = 0;
for (int i : a) {
if (a[i] < a[i + 1]) {
counter++;
}
if (a[i] > a[i + 1]) {
maxCounter = counter;
counter = 0;
}
}
System.out.println(maxCounter);
}
}
公共类数组{
公共静态void main(字符串[]args){
int[]a={4,7,15,3,9,22,36,24,28,14,19,27,30,31,2,9,29,30,16,19};
int计数器=0;
int-maxCounter=0;
对于(int i:a){
if(a[i]a[i+1]){
最大计数器=计数器;
计数器=0;
}
}
系统输出打印项次(最大计数器);
}
}
您有两个bug,您的循环应该是一个普通的数组索引上的循环(而不是每个数组内容上的循环);而maxCounter
的设置应该包括比较(而不是盲分配)。像
for(int i=0;i+1
public class Array {
public static void main(String[] args) {
int[] a = {4,7,15,3,9,22,36,24,28,14,19,27,30,31,2,9,29,30,16,19};
int counter = 1;
int maxCounter = 0;
for (int i = 0; i < a.length - 1 ; i++) {
if (a[i] < a[i + 1]) {
counter++;
} else if (a[i] > a[i + 1]) {
counter = 1;
}
if (counter > maxCounter) {
maxCounter = counter;
}
}
System.out.println(maxCounter);
}
}
公共类数组{
公共静态void main(字符串[]args){
int[]a={4,7,15,3,9,22,36,24,28,14,19,27,30,31,2,9,29,30,16,19};
int计数器=1;
int-maxCounter=0;
对于(int i=0;ia[i+1]){
计数器=1;
}
如果(计数器>最大计数器){
最大计数器=计数器;
}
}
系统输出打印项次(最大计数器);
}
}
这是什么?为什么在这里?请提供“未运行”的详细信息,如错误消息或错误输出。
public class Array {
public static void main(String[] args) {
int[] a = {4,7,15,3,9,22,36,24,28,14,19,27,30,31,2,9,29,30,16,19};
int counter = 1;
int maxCounter = 0;
for (int i = 0; i < a.length - 1 ; i++) {
if (a[i] < a[i + 1]) {
counter++;
} else if (a[i] > a[i + 1]) {
counter = 1;
}
if (counter > maxCounter) {
maxCounter = counter;
}
}
System.out.println(maxCounter);
}
}