Java Program to Find the Maximum Element in a Matrix
Last Updated :
28 Jul, 2022
Given a multi-dimensional 2D matrix of n rows and m column order N × M. The task is to find the maximum element in the given matrix.
Illustration:
Input : mat[][] = { {1,3,4,19}, {11,10,12,1}, {7,9,0,4,99} }
Output : 99
Methods:
- Iterative method (naive approach)
- Using the principle of recursion (Bit more optimal approach)
Method 1: Iterative method
The approach is simple to iterate every element of the matrix one by one and store the maximum of two elements in the max variable as used below in the program and returns the max variable that contains the maximum element of the matrix.
Example
Java
// Java Program to Find the Maximum Element in a Matrix
// Importing input output classes
import java.io.*;
// Main class
class GFG {
// Method 1
// To find the maximum element
static int max(int mat[][])
{
// Declaring and initializing variable to unity
// holding the maximum element value
int max = 0;
// Iterating over matrix
// using nested for loops
// Outer loop for rows
for (int i = 0; i < mat.length; ++i) {
// Inner loop for columns
for (int j = 0; j < mat[0].length; ++j) {
// Storing the maximum element
max = Math.max(mat[i][j], max);
}
}
// Return the maximum element
return max;
}
// Method 2
// Main driver method
public static void main(String[] args)
{
// Custom input 2D matrix
int mat[][] = { { 1, 3, 4, 19 },
{ 11, 10, 12, 1 },
{ 7, 9, 0, 99 } };
// Calling the method 1 to get max element
// and storing that integer element
int max_element = max(mat);
// Printing the maximum element
System.out.println(max_element);
}
}
Time Complexity: O(n2)
Auxiliary Space: O(1)
Method 2: Using the principle of recursion
Procedure:
- Recursively call every element of the matrix to the last element of the matrix.
- Return the max of the current element to the next recursive call element.
Example
Java
// Java Program to Find the Maximum Element in a Matrix
// Using Recursion
// Importing input output classes
import java.io.*;
// main class
class GFG {
// Method 1
// To find the max element
static int max(int mat[][], int i, int j)
{
// Handling the base cases
if (j == mat[0].length && i < mat.length) {
// Changing the row and column index
j = 0;
++i;
}
// Generic case
if (i == mat.length) {
// Simply return
return 0;
}
// By far if we reach here then
// return the max element
return Math.max(mat[i][j], max(mat, i, j + 1));
}
// Method 2
// Main driver method
public static void main(String[] args)
{
// Custom input 2D array
int mat[][] = { { 1, 3, 4, 19 },
{ 11, 10, 12, 1 },
{ 7, 9, 0, 99 } };
// Calling the method 1 that is recursive function to
// find out maximum element
int max_element = max(mat, 0, 0);
// Print and display the maximum element
System.out.println(max_element);
}
}
Time Complexity: O(n)
Auxiliary Space: O(n)
Similar Reads
Java Program to Find maximum element of each row in a matrix Given a matrix, the task is to find the maximum element of each row. Examples: Input : [1, 2, 3] [1, 4, 9] [76, 34, 21] Output : 3 9 76 Input : [1, 2, 3, 21] [12, 1, 65, 9] [1, 56, 34, 2] Output : 21 65 56 Approach : Approach is very simple. The idea is to run the loop for no_of_rows. Check each ele
2 min read
Java Program to Get the Maximum Element From a Vector Prerequisite: Vectors in Java Why We Use Vector? Till now, we have learned two ways for declaring either with a fixed size of array or size enter as per the demand of the user according to which array is allocated in memory. int Array_name[Fixed_size] ; int array_name[variable_size] ; Both ways we l
4 min read
Finding Maximum Element of Java Vector Vector implements a dynamic array that means it can grow or shrink as required. Like an array, it contains components that can be accessed using an integer index. We know two ways for declaring array i.e. either with a fixed size of array or size enter as per the demand of the user according to whic
3 min read
Java Program to Find Largest Element in an Array Finding the largest element in an array is a common programming task. There are multiple approaches to solve it. In this article, we will explore four practical approaches one by one to solve this in Java.Example Input/Output:Input: arr = { 1, 2, 3, 4, 5}Output: 5Input: arr = { 10, 3, 5, 7, 2, 12}Ou
4 min read
Java Program for Maximum and Minimum in a square matrix. Given a square matrix of order n*n, find the maximum and minimum from the matrix given. Examples: Input : arr[][] = {5, 4, 9, 2, 0, 6, 3, 1, 8}; Output : Maximum = 9, Minimum = 0 Input : arr[][] = {-5, 3, 2, 4}; Output : Maximum = 4, Minimum = -5 Naive Method : We find maximum and minimum of matrix
3 min read