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 element inside the row and find for the maximum element. Finally, print the element.
Implementation:
C++
#include<bits/stdc++.h> using namespace std; const int N = 4; void printArray( int result[], int no_of_rows) { for ( int i = 0; i < no_of_rows; i++) { cout<< result[i]<< "\n" ; } } void maxelement( int no_of_rows, int arr[][N]) { int result[no_of_rows]; for ( int i = 0; i < no_of_rows; i++) { int max = *max_element(arr[i], arr[i]+N); result[i] = max; } printArray(result,no_of_rows); } int main() { int arr[][N] = { {3, 4, 1, 8}, {1, 4, 9, 11}, {76, 34, 21, 1}, {2, 1, 4, 5} }; maxelement(4, arr); return 0; } |
Java
// Java program to find maximum // element of each row in a matrix public class GFG{ // Function to get max element public static void maxelement( int no_of_rows, int [][] arr) { int i = 0 ; // Initialize max to 0 at beginning // of finding max element of each row int max = 0 ; int [] result = new int [no_of_rows]; while (i < no_of_rows) { for ( int j = 0 ; j < arr[i].length; j++) { if (arr[i][j] > max) { max = arr[i][j]; } } result[i] = max; max = 0 ; i++; } printArray(result); } // Print array element private static void printArray( int [] result) { for ( int i = 0 ; i<result.length;i++) { System.out.println(result[i]); } } // 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 maxelement( 4 , arr); } } |
Python
# Python program to find maximum # element of each row in a matrix # importing numpy import numpy # Function to get max element def maxelement(arr): # get number of rows and columns no_of_rows = len (arr) no_of_column = len (arr[ 0 ]) for i in range (no_of_rows): # Initialize max1 to 0 at beginning # of finding max element of each row max1 = 0 for j in range (no_of_column): if arr[i][j] > max1 : max1 = arr[i][j] # print maximum element of each row print (max1) # Driver Code arr = [[ 3 , 4 , 1 , 8 ], [ 1 , 4 , 9 , 11 ], [ 76 , 34 , 21 , 1 ], [ 2 , 1 , 4 , 5 ]] # Calling the function maxelement(arr) |
C#
// C# program to find maximum // element of each row in a matrix using System; class GFG { // Function to get max element public static void maxelement( int no_of_rows, int [][] arr) { int i = 0; // Initialize max to 0 at beginning // of finding max element of each row int max = 0; int [] result = new int [no_of_rows]; while (i < no_of_rows) { for ( int j = 0; j < arr[i].Length; j++) { if (arr[i][j] > max) { max = arr[i][j]; } } result[i] = max; max = 0; i++; } printArray(result); } // Print array element private static void printArray( int [] result) { for ( int i = 0; i < result.Length;i++) { Console.WriteLine(result[i]); } } // Driver code public static void Main( string [] args) { int [][] arr = new int [][] { new int [] {3, 4, 1, 8}, new int [] {1, 4, 9, 11}, new int [] {76, 34, 21, 1}, new int [] {2, 1, 4, 5} }; // Calling the function maxelement(4, arr); } } // This code is contributed by Shrikant13 |
PHP
<?php // PHP program to find maximum // element of each row in a matrix $N = 4; // Print array element function printArray( $result , $no_of_rows ) { for ( $i = 0; $i < $no_of_rows ; $i ++) { echo $result [ $i ]. "\n" ; } } // Function to get max element function maxelement( $no_of_rows , $arr ) { global $N ; $i = 0; // Initialize max to 0 at beginning // of finding max element of each row $max = 0; $result = array_fill (0, $no_of_rows ,0); while ( $i < $no_of_rows ) { for ( $j = 0; $j < $N ; $j ++) { if ( $arr [ $i ][ $j ] > $max ) { $max = $arr [ $i ][ $j ]; } } $result [ $i ] = $max ; $max = 0; $i ++; } printArray( $result , $no_of_rows ); } // Driver code $arr = array ( array (3, 4, 1, 8), array (1, 4, 9, 11), array (76, 34, 21, 1), array (2, 1, 4, 5)); // Calling the function maxelement(4, $arr ); // This code is contributed by mits ?> |
Javascript
<script> // javascript program to find maximum // element of each row in a matrix // Function to get max element function maxelement(no_of_rows, arr) { var i = 0; // Initialize max to 0 at beginning // of finding max element of each row var max = 0; var result = Array.from({length: no_of_rows}, (_, i) => 0); while (i < no_of_rows) { for ( var j = 0; j < arr[i].length; j++) { if (arr[i][j] > max) { max = arr[i][j]; } } result[i] = max; max = 0; i++; } printArray(result); } // Print array element function printArray(result) { for ( var i = 0; i < result.length; i++) { document.write(result[i]+ "<br>" ); } } // Driver code var arr = [[3, 4, 1, 8], [ 1, 4, 9, 11], [ 76, 34, 21, 1], [ 2, 1, 4, 5] ]; // Calling the function maxelement(4, arr); // This code is contributed by 29AjayKumar </script> |
8 11 76 5
Complexity Analysis:
- Time Complexity: O(n*m) (where, n refers to no. of rows and m refers to no. of columns)
- Auxiliary Space: O(n) (where, n refers to no. of rows)
METHOD: Using List Comprehension.
APPROACH:
It is a concise way of creating a list in Python. We iterate through each row in the matrix using list comprehension and find the maximum element in the current row using the max() function. We then append the maximum element to a new list called “output”. Finally, we print the “output” list which contains the maximum element of each row in the matrix.
ALGORITHM:
1. Iterate through each row of the matrix.
2. Find the maximum element in the current row using the max() function.
3. Append the maximum element to the output list.
4. Return the output list.
Python3
matrix = [[ 1 , 2 , 3 ], [ 1 , 4 , 9 ], [ 76 , 34 , 21 ]] output = [ max (row) for row in matrix] print (output) |
[3, 9, 76]
Time complexity: O(nm) where n is the number of rows and m is the number of columns in the matrix.
Auxiliary Space: O(n) where n is the number of rows in the matrix
Please Login to comment...