Find maximum element of each column in a matrix

Given a matrix, the task is to find the maximum element of each column.

Examples:

Input:  [1, 2, 3]
         [1, 4, 9]
         [76, 34, 21]

Output:
76
34
21

Input: [1, 2, 3, 21]
        [12, 1, 65, 9]
        [1, 56, 34, 2]
Output:
12
56
65
21

Approach: The idea is to run the loop for no_of_cols. Check each element inside the column and find for the maximum element. Finally, print the element.
 

Below is the implementation of the above approach:

C++

filter_none

edit
close

play_arrow

link
brightness_4
code

// C++ program to find the maximum
// element of each column.
#include <bits/stdc++.h>
using namespace std;
const int MAX = 100;
  
// Function to find the maximum
// element of each column.
void largestInColumn(int mat[][MAX], int rows, int cols)
{
    for (int i = 0; i < cols; i++) {
        // initialize the maximum element
        // with 0
        int maxm = mat[0][i];
  
        // Run the inner loop for rows
        for (int j = 1; j < rows; j++) {
            // check if any element is greater 
            // than the maximum element
            // of the column and replace it
            if (mat[j][i] > maxm)
                maxm = mat[j][i];
        }
  
        // print the largest element of the column
        cout << maxm << endl;
    }
}
  
// Driver code
int main()
{
    int n = 4, m = 4;
    int mat[][MAX] = { { 3, 4, 1, 8 },
                       { 1, 4, 9, 11 },
                       { 76, 34, 21, 1 },
                       { 2, 1, 4, 5 } };
  
    largestInColumn(mat, n, m);
  
    return 0;
}

chevron_right


Java

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to find maximum
// element of each column in a matrix
public class GFG {
  
    // Function to find the maximum
    // element of each column.
    public static void largestInColumn(int cols, int[][] arr)
    {
  
        for (int i = 0; i < cols; i++) {
  
            // Initialize max to 0 at begining
            // of finding max element of each column
            int maxm = arr[0][i];
            for (int j = 1; j < arr[i].length; j++)
                if (arr[j][i] > maxm)
                    maxm = arr[j][i];
  
            System.out.println(maxm);
        }
    }
  
    // Driver code
    public static void main(String[] args)
    {
        int[][] arr = new int[][] { { 3, 4, 1, 8 },
                                    { 1, 4, 9, 11 },
                                    { 76, 34, 21, 1 },
                                    { 2, 1, 4, 5 } };
        // Calling the function
        largestInColumn(4, arr);
    }
}

chevron_right


Python3

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python3 program to find the maximum 
# element of each column
MAX = 100
  
# function to find the maximum
# elements of each column
def largestInColumn(mat, rows, cols):
    for i in range(cols):
          
        # intialize the maximum element with 0
        maxm = mat[0][i]
        # run the inner loop for news
        for j in range(rows):
              
            # check if any elements is greater 
            # than the maximum elements
            # of the cloumn and replace it
            if mat[j][i] > maxm:
                maxm = mat[j][i]
          
        # print the largest element
        # of the column
        print(maxm)
  
# Driver code
n, m = 4, 4
mat = [[3, 4, 1, 8],
       [1, 4, 9, 11],
       [76, 34, 21, 1],
       [2, 1, 4, 5]]
      
largestInColumn(mat, n, m); 
  
# This code is contributed 
# by Mohit kumar 29 (IIIT gwalior)

chevron_right


C#

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# program to find maximum
// element of each column in a matrix
using System;
  
class GFG 
{
  
// Function to find the maximum
// element of each column.
public static void largestInColumn(int cols, 
                                   int[, ] arr)
{
    for (int i = 0; i < cols; i++)
    {
  
        // Initialize max to 0 at begining
        // of finding max element of each column
        int maxm = arr[0, i];
        for (int j = 1; j < arr.GetLength(0); j++)
            if (arr[j, i] > maxm)
                maxm = arr[j, i];
  
        Console.WriteLine(maxm);
    }
}
  
// Driver code
public static void Main()
{
    int[, ] arr = new int[, ] { { 3, 4, 1, 8 },
                                { 1, 4, 9, 11 },
                                { 76, 34, 21, 1 },
                                { 2, 1, 4, 5 } };
    // Calling the function
    largestInColumn(4, arr);
}
}
  
// This code is contributed 
// by Akanksha Rai

chevron_right


PHP

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
// PHP program to find the maximum 
// element of each column. 
$MAX = 100; 
  
// Function to find the maximum 
// element of each column. 
function largestInColumn($mat, $rows, $cols
    for ($i = 0; $i < $cols; $i++) 
    
        // initialize the maximum element 
        // with 0 
        $maxm = $mat[0][$i]; 
  
        // Run the inner loop for rows 
        for ($j = 1; $j < $rows; $j++)
        
            // check if any element is greater 
            // than the maximum element 
            // of the column and replace it 
            if ($mat[$j][$i] > $maxm
                $maxm = $mat[$j][$i]; 
        
  
        // print the largest element 
        // of the column 
        echo $maxm, "\n"
    
  
// Driver code 
$n = 4;
$m = 4; 
$mat = array(array( 3, 4, 1, 8 ), 
             array( 1, 4, 9, 11 ), 
             array( 76, 34, 21, 1 ), 
             array( 2, 1, 4, 5 )); 
  
largestInColumn($mat, $n, $m); 
  
// This code is contributed by Sach_Code
?>

chevron_right


Output:

76
34
21
11

Time Complexity : O(n * m), Here n is No. of Rows and m is No. of Colum.



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.