2013-03-19 6 views
0

Как найти максимальное значение столбца в матрице, используя только 2 для Java?Максимальное значение столбца в матрице?

for(int i = 1; i< N; i++) 
    for(int j = 1; j < M; j++) 
     i want to find the maxim for each column 
+1

Зачем вам нужно 2 для петель, чтобы найти max в столбце? – smk

+0

Как я могу это сделать? – George

+0

Может быть, он означает максимальное значение в любом столбце? –

ответ

1
public int findMaxInCol(int colIndex){ 
    int max = Integer.Min; 
    for(int row=0;row<Matrix.Rows;row++){ 

    if(matrix[row][colIndex] > max){ 
     max = matrix[row]colIndex]; 
    } 

} 
    return max; 
} 



void int findMaxOfMaxes() { 
    int maxOfMaxs = Integer.min; 
    for(int col=0;col<j;col++){ 
     int maxInCol = findMaxInCol(col); 
     if(maxInCol > maxOfMaxs) 
      maxOfMaxs = maxInCol; 
    } 
    return maxOfMaxs 

} 

// псевдокод

// редактирование после того, как обнаружили, что вы хотите максимум в матрице. Вы правы, вам нужно 2 для петель.

+0

Это возможно только с 1, но уродливым. Вы только бы хотели, если бы кто-то конкретно сказал вам «вы можете использовать только один цикл», а затем он в основном включает итерацию по индексу и разложение индекса на строку и столбец через/и% соответственно. – dspyz

+0

Это также зависит от того, как определяется ваша матрица. Например, если он определен как динамический массив, то достаточно одного цикла: 'for (int i = 0; i

Смежные вопросы