Я хочу избавиться от нуля в моем методе. Кто-нибудь знает как это сделать? Должен ли я преобразовать матрицу в строку или я могу просто удалить элементы каким-то образом в матрице целых чисел?Удалить целые числа в матрице
Отсюда:
1 0 0 0 0
1 1 0 0 0
1 2 1 0 0
1 3 3 1 0
1 4 6 4 1
К этому:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
public static void writeElement(int[][] m){
int[][] b = new int[m.length][m.length];
for(int row=0; row<m.length; row++){
b[row][0] = 1;
}
for(int col=1; col<m.length; col++){
b[0][col]=0;
}
for(int row=1; row<m.length; row++){
for(int col=1; col<m[row].length; col++){
b[row][col] = (b[row-1][col-1] + b[row-1][col]);
}
}
for(int i=0; i<b.length; i++){
for(int j=0; j<b[i].length; j++){
System.out.print(b[i][j] + " ");
}
System.out.println();
}
}//writeElement
Что именно вы пытаетесь достичь? Вы хотите просто не печатать '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' или вы хотите изменить 'm' для замены массивов на конечные нулевые элементы с более короткими массивами? – azurefrog
@rabbitguy На самом деле это не 2D-массив, а просто массив массивов int. Не все массивы должны быть одинаковой длины. Совершенно законно иметь что-то вроде 'int [] [] m = {{1}, {1, 2}, {1, 2, 3}};' – azurefrog
Я хочу создать * n-матрицу и напечатать ее без ноль. Да, я просто хочу не печатать их. Но так как первая строка из 0 необходима для вычислений остальной части матрицы, я думаю, мне пришлось бы избавиться от них после создания матрицы с нулем. Извините, но я огромный noob в java! – erikperik