JAVA中如果一个二维数组的一行元素全部为1,就把这行元素消失,每消失一行元素就把每行元素变为下一行元素。每消失一行元素就把第一行元素全变为0怎么表示?
时间: 2024-05-30 09:14:23 浏览: 45
剔除2维数组中全为0的元素
可以使用如下的 Java 代码表示:
int[][] array = new int[n][m]; // n 表示数组的行数,m 表示数组的列数
int count = 0; // 表示消失的行数
for (int i = 0; i < n; i++) {
boolean flag = true; // 标记一行中的元素是否全部为 1
for (int j = 0; j < m; j++) {
if (array[i][j] != 1) {
flag = false;
break;
}
}
if (flag) { // 如果一行中的元素全部为 1
count++; // 消失的行数加 1
for (int j = 0; j < m; j++) {
array[i][j] = 0; // 将这一行的元素全部变为 0
}
}
}
for (int i = 0; i < count; i++) {
for (int j = 0; j < m; j++) {
if (i == count - 1) {
array[i][j] = 0; // 最后一行元素全部变为 0
} else {
array[i][j] = array[i + 1][j]; // 前几行的元素都变为下一行的元素
}
}
}
阅读全文