无法使用正确的方法删除matrix.java的最大值
我刚刚开始我的Java教育,所以这是我的家庭任务之一,我完成了大部分任务,但最后一部分仍在努力。 所以问题是我真的不能正确地使用这个方法。我需要从矩阵中删除最大值。 主要方法如下所示无法使用正确的方法删除matrix.java的最大值,java,Java,我刚刚开始我的Java教育,所以这是我的家庭任务之一,我完成了大部分任务,但最后一部分仍在努力。 所以问题是我真的不能正确地使用这个方法。我需要从矩阵中删除最大值。 主要方法如下所示 public class main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("Enter size of m
public class main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("Enter size of matrix: ");
int size = scanner.nextInt();
int matrix[][] = new int[size][size];
RandomedMatrix(matrix, size);
matrix = RandomedMatrix(matrix, size);
System.out.println("Matrix: ");
printMatrix(matrix, size);
matrixInIncreaseOrder(matrix, size);
sumMatrixBetweenNegElem(matrix);
DeleteMaxElem(matrix, size);
我现在需要做的方法是这样的
private static void DeleteMaxElem(int[][] matrix, int size) {
boolean del = false;
int size2 = size;
matrix = Integer.MAX_VALUE(matrix);
for (int j = matrix; j < size; j++) {
del = true;
for (int i = matrix; i < size2; i++)
if (matrix[i][j] != 0) {
del = false;
break;
}
if (del) {
for (int k = j; k < (size - 1); k++)
for (int i = 0; i < size; i++)
matrix[i][k] = matrix[i][k + 1];
--j;
--size;
}
}
for (int j = 0; j < size; j++) {
del = true;
for (int i = 0; i < size2; i++)
if (matrix[i][j] != 0) {
del = false;
break;
}
if (del) {
for (int k = j; k < (size - 1); k++)
for (int i = 0; i < size; i++)
matrix[i][k] = matrix[i][k + 1];
--j;
--size;
}
}
System.out.println("Matrix without maximum value: ");
for (int i = 0; i < size; i++) {
for (int j = 0; j < size; j++) {
System.out.print(matrix[i][j] + " ");
}
System.out.println();
}
}
private static void DeleteMaxElem(int[][]矩阵,int size){
布尔del=false;
int size2=大小;
矩阵=整数。最大值(矩阵);
对于(int j=矩阵;j
请告诉我们您完成的任务,以便我们能够帮助您。您遇到了什么错误?乍一看,matrix=Integer.MAX_值(matrix)
不会编译,您不能将int分配给int数组。并且MAX_VALUE
不是一个方法,它是一个字段我需要在矩阵中找到最高的元素并将其删除,然后打印没有此元素的矩阵“删除”是什么意思?由于矩阵具有固定的大小,因此不能仅从矩阵中删除元素。也许您想删除包含此元素的行和列(从而缩小矩阵维度)?或者您想用0替换元素?这些是非常不同的事情。此外,如果存在多个最大值元素,该怎么办?