In this post, you will learn how to find the smallest element in a given Matrix in Java. To find the smallest element in a matrix (2D array) in Java, you can iterate through each element of the matrix and keep track of the smallest value encountered so far.
Here’s a Java program to do that:
package com.javacodepoint.array.multidimensional;
public class SmallestElementInMatrix {
public static int findSmallestElement(int[][] matrix) {
if (matrix == null || matrix.length == 0) {
throw new IllegalArgumentException("Input matrix is null or empty.");
}
// Initialize with the first element of the matrix
int smallest = matrix[0][0];
// Iterate through the matrix and update the smallest value
// if a smaller element is found
for (int i = 0; i < matrix.length; i++) {
for (int j = 0; j < matrix[i].length; j++) {
if (matrix[i][j] < smallest) {
smallest = matrix[i][j];
}
}
}
return smallest;
}
public static void main(String[] args) {
int[][] matrix = { { 4, 12, 6 }, { 8, 3, 0 }, { -5, 9, 7 } };
int smallestElement = findSmallestElement(matrix);
System.out.println("Matrix:");
for (int[] row : matrix) {
for (int value : row) {
System.out.print(value + " ");
}
System.out.println();
}
System.out.println("The smallest element in the matrix: " + smallestElement);
}
}
OUTPUT:
Matrix:
4 12 6
8 3 0
-5 9 7
The smallest element in the matrix: -5
Explanation:
In this program, we have a findSmallestElement
method that takes a 2D matrix as input and returns the smallest element in the matrix.
We initialize the smallest
variable with the value of the first element of the matrix (matrix[0][0]
). Then, we iterate through the matrix using nested loops. For each element, we compare it with the current value of smallest
. If the element is smaller than smallest
, we update smallest
to the value of the element.
After iterating through the entire matrix, smallest
will contain the smallest element.
Learn also: Add the Two Matrices.