Skip to content
Related Articles

Related Articles

Improve Article
Program to find the maximum element in a Matrix
  • Difficulty Level : Easy
  • Last Updated : 07 May, 2021

Given a NxM matrix. The task is to find the maximum element in this matrix.
Examples
 

Input: mat[4][4] = {{1, 2, 3, 4},
                    {25, 6, 7, 8},
                    {9, 10, 11, 12},
                    {13, 14, 15, 16}};
Output: 25

Input: mat[3][4] = {{9, 8, 7, 6},
                    {5, 4, 3, 2},
                    {1, 0, 12, 45}};
Output: 45

 

Approach: The idea is to traverse the matrix using two nested loops, one for rows and one for columns and find the maximum element. Initialize a variable maxElement with a minimum value and traverse the matrix and compare every time if the current element is greater than a maxElement. If yes then update maxElement with the current element.
Below is the implementation of the above approach: 
 

C++




// CPP code to find max element in a matrix
#include <bits/stdc++.h>
using namespace std;
 
#define N 4
#define M 4
 
// Function to find max element
// mat[][] : 2D array to find max element
int findMax(int mat[N][M])
{
 
    // Initializing max element as INT_MIN
    int maxElement = INT_MIN;
 
    // checking each element of matrix
    // if it is greater than maxElement,
    // update maxElement
    for (int i = 0; i < N; i++) {
        for (int j = 0; j < M; j++) {
            if (mat[i][j] > maxElement) {
                maxElement = mat[i][j];
            }
        }
    }
 
    // finally return maxElement
    return maxElement;
}
 
// Driver code
int main()
{
 
    // matrix
    int mat[N][M] = { { 1, 2, 3, 4 },
                      { 25, 6, 7, 8 },
                      { 9, 10, 11, 12 },
                      { 13, 14, 15, 16 } };
 
    cout << findMax(mat) << endl;
 
    return 0;
}

Java




// Java code to find max element in a matrix
 
public class GFG {
     
    final static int N = 4;
    final static int  M = 4 ;
 
    // Function to find max element
    // mat[][] : 2D array to find max element
    static int findMax(int mat[][])
    {
 
        // Initializing max element as INT_MIN
        int maxElement = Integer.MIN_VALUE;
 
        // checking each element of matrix
        // if it is greater than maxElement,
        // update maxElement
        for (int i = 0; i < N; i++) {
            for (int j = 0; j < M; j++) {
                if (mat[i][j] > maxElement) {
                    maxElement = mat[i][j];
                }
            }
        }
 
        // finally return maxElement
        return maxElement;
    }
 
     
    // Driver code
    public static void main(String args[])
    {
           // matrix
        int mat[][] = { { 1, 2, 3, 4 },
                          { 25, 6, 7, 8 },
                          { 9, 10, 11, 12 },
                          { 13, 14, 15, 16 } };
 
        System.out.println(findMax(mat)) ;
   
    }
    // This Code is contributed by ANKITRAI1
}

Python3




# Python 3 code to find max element
# in a matrix
import sys
N = 4
M = 4
 
# Function to find max element
# mat[][] : 2D array to find max element
def findMax(mat):
     
    # Initializing max element as INT_MIN
    maxElement = -sys.maxsize - 1
 
    # checking each element of matrix
    # if it is greater than maxElement,
    # update maxElement
    for i in range(N):
        for j in range(M):
            if (mat[i][j] > maxElement):
                maxElement = mat[i][j]
         
    # finally return maxElement
    return maxElement
 
# Driver code
if __name__ == '__main__':
     
    # matrix
    mat = [[1, 2, 3, 4],
           [25, 6, 7, 8],
           [9, 10, 11, 12],
           [13, 14, 15, 16]]
    print(findMax(mat))
 
# This code is contributed by
# Surendra_Gangwar

C#




// C# code to find max element in a matrix
using System;
 
class GFG {
     
    static int N = 4;
    static int M = 4 ;
 
    // Function to find max element
    // mat[,] : 2D array to find max element
    static int findMax(int[,] mat)
    {
 
        // Initializing max element as INT_MIN
        int maxElement = int.MinValue;
 
        // checking each element of matrix
        // if it is greater than maxElement,
        // update maxElement
        for (int i = 0; i < N; i++) {
             
            for (int j = 0; j < M; j++) {
                 
                if (mat[i,j] > maxElement) {
                     
                    maxElement = mat[i,j];
                }
            }
        }
 
        // finally return maxElement
        return maxElement;
    }
 
     
    // Driver code
    public static void Main()
    {
         
        // matrix
        int[,]mat = {{ 1, 2, 3, 4},
                     {25, 6, 7, 8},
                     {9, 10, 11, 12},
                     {13, 14, 15, 16}};
 
        Console.Write(findMax(mat)) ;
    }
     
}
 
// This code is contributed by ChitraNayal

PHP




<?php
// PHP code to find max element in a matrix
 
// Function to find max element
// mat[][] : 2D array to find max element
function findMax($mat)
{
 
    // Initializing max element as INT_MIN
    $maxElement = PHP_INT_MIN;
 
    // checking each element of matrix
    // if it is greater than maxElement,
    // update maxElement
    for ($i = 0; $i < 4; $i++)
    {
        for ($j = 0; $j < 4; $j++)
        {
            if ($mat[$i][$j] > $maxElement)
            {
                $maxElement = $mat[$i][$j];
            }
        }
    }
 
    // finally return maxElement
    return $maxElement;
}
 
// Driver code
$mat = array(array(1, 2, 3, 4),
             array(25, 6, 7, 8),
             array(9, 10, 11, 12),
             array(13, 14, 15, 16));
 
echo findMax($mat) . "\n";
 
// This code is contributed
// by Akanksha Rai
?>

Javascript




<script>
// Java script code to find max element in a matrix
 
let N = 4;
    let M = 4 ;
 
    // Function to find max element
    // mat[][] : 2D array to find max element
    function findMax(mat)
    {
 
        // Initializing max element as INT_MIN
        let maxElement = Number.MIN_VALUE;
 
        // checking each element of matrix
        // if it is greater than maxElement,
        // update maxElement
        for (let i = 0; i < N; i++) {
            for (let j = 0; j < M; j++) {
                if (mat[i][j] > maxElement) {
                    maxElement = mat[i][j];
                }
            }
        }
 
        // finally return maxElement
        return maxElement;
    }
 
     
    // Driver code
     
        // matrix
        let mat = [[ 1, 2, 3, 4 ],
                        [ 25, 6, 7, 8 ],
                        [ 9, 10, 11, 12 ],
                        [ 13, 14, 15, 16 ]];
 
        document.write(findMax(mat)) ;
 
// This code is contributed by manoj
</script>
Output: 
25

 

Time Complexity: O(N*M)
 

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.  To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.

In case you wish to attend live classes with industry experts, please refer DSA Live Classes 




My Personal Notes arrow_drop_up
Recommended Articles
Page :