Минимальный элемент каждой строки и каждого столбца в матрице

Опубликовано: 5 Января, 2022

Для данной матрицы задача состоит в том, чтобы найти минимальный элемент каждой строки и каждого столбца.
Примеры:

 Ввод: [1, 2, 3]
        [1, 4, 9]
        [76, 34, 21]
Вывод: минимальный элемент каждой строки - {1, 1, 21}
Минимальный элемент каждого столбца: {1, 2, 3}

Ввод: [1, 2, 3, 21]
       [12, 1, 65, 9]
       [11, 56, 34, 2]
Вывод: минимальный элемент каждой строки - {1, 1, 21}
Минимальный элемент каждого столбца: {1, 2, 3}

Рекомендуется: сначала попробуйте свой подход в {IDE}, прежде чем переходить к решению.

Подход : идея состоит в том, чтобы запустить цикл для no_of_rows. Проверьте каждый элемент внутри строки и найдите минимальный элемент. Наконец, распечатайте элемент. Точно так же проверьте каждый элемент внутри столбца и найдите минимальный элемент. Наконец, распечатайте элемент.
Ниже представлена реализация описанного выше подхода:

C ++

// C++ program to find the minimum
// element of each row and each column
#include<bits/stdc++.h>
using namespace std;
const int MAX = 100;
// function to find the minimum
// element of each row.
void smallestInRow( int mat[][MAX], int n, int m)
{
cout << " { " ;
for ( int i = 0; i < n; i++) {
// initialize the minimum element
// as first element
int minm = mat[i][0];
for ( int j = 1; j < m; j++) {
// check if any element is smaller
// than the minimum element of the row
// and replace it
if (mat[i][j] < minm)
minm = mat[i][j];
}
// print the smallest element of the row
cout << minm << ", " ;
}
cout << "}" ;
}
// function to find the minimum
// element of each column.
void smallestInCol( int mat[][MAX], int n, int m)
{
cout << " { " ;
for ( int i = 0; i < m; i++) {
// initialize the minimum element
// as first element
int minm = mat[0][i];
// Run the inner loop for columns
for ( int j = 1; j < n; j++) {
// check if any element is smaller
// than the minimum element of the column
// and replace it
if (mat[j][i] < minm)
minm = mat[j][i];
}
// print the smallest element of the row
cout << minm << ", " ;
}
cout << "}" ;
}
// Driver code
int main()
{
int n = 3, m = 3;
int mat[][MAX] = { { 2, 1, 7 },
{ 3, 7, 2 },
{ 5, 4, 9 } };
cout << "Minimum element of each row is " ;
smallestInRow(mat, n, m);
cout << " Minimum element of each column is " ;
smallestInCol(mat, n, m);
return 0;
}

Джава

// Java program to find the minimum
// element of each row and each column
public class GFG {
final static int MAX = 100 ;
// function to find the minimum
// element of each row.
static void smallestInRow( int mat[][], int n, int m) {
System.out.print( " { " );
for ( int i = 0 ; i < n; i++) {
// initialize the minimum element
// as first element
int minm = mat[i][ 0 ];
for ( int j = 1 ; j < m; j++) {
// check if any element is smaller
// than the minimum element of the row
// and replace it
if (mat[i][j] < minm) {
minm = mat[i][j];
}
}
// print the smallest element of the row
System.out.print(minm + ", " );
}
System.out.println( "}" );
}
// function to find the minimum
// element of each column.
static void smallestInCol( int mat[][], int n, int m) {
System.out.print( " { " );
for ( int i = 0 ; i < m; i++) {
// initialize the minimum element
// as first element
int minm = mat[ 0 ][i];
// Run the inner loop for columns
for ( int j = 1 ; j < n; j++) {
// check if any element is smaller
// than the minimum element of the column
// and replace it
if (mat[j][i] < minm) {
minm = mat[j][i];
}
}
// print the smallest element of the row
System.out.print(minm + ", " );
}
System.out.print( "}" );
}
// Driver code
public static void main(String args[]) {
int n = 3 , m = 3 ;
int mat[][] = {{ 2 , 1 , 7 },
{ 3 , 7 , 2 },
{ 5 , 4 , 9 }};
System.out.print( "Minimum element of each row is " );
smallestInRow(mat, n, m);
System.out.print( " Minimum element of each column is " );
smallestInCol(mat, n, m);
}
}
/*This code is contributed by 29AjayKumar*/

Python3

# Python 3 program to find the minimum
MAX = 100
# function to find the minimum
# element of each row.
def smallestInRow(mat, n, m):
print ( "{" , end = "")
for i in range (n):
# initialize the minimum element
# as first element
minm = mat[i][ 0 ]
for j in range ( 1 , m, 1 ):
# check if any element is smaller
# than the minimum element of the
# row and replace it
if (mat[i][j] < minm):
minm = mat[i][j]
# print the smallest element
# of the row
print (minm, end = "," )
print ( "}" )
# function to find the minimum
# element of each column.
def smallestInCol(mat, n, m):
print ( "{" , end = "")
for i in range (m):
# initialize the minimum element
# as first element
minm = mat[ 0 ][i]
# Run the inner loop for columns
for j in range ( 1 , n, 1 ):
# check if any element is smaller
# than the minimum element of the
# column and replace it
if (mat[j][i] < minm):
minm = mat[j][i]
# print the smallest element
# of the row
print (minm, end = "," )
print ( "}" )
# Driver code
if __name__ = = '__main__' :
n = 3
m = 3
mat = [[ 2 , 1 , 7 ],
[ 3 , 7 , 2 ],
[ 5 , 4 , 9 ]];
print ( "Minimum element of each row is" ,
end = " " )
smallestInRow(mat, n, m)
print ( "Minimum element of each column is" ,
end = " " )
smallestInCol(mat, n, m)
# This code is contributed by
# Shashank_Sharma

C #

// C# program to find the minimum
// element of each row and each column
using System;
class GFG
{
readonly static int MAX = 100;
// function to find the minimum
// element of each row.
static void smallestInRow( int [,]mat,
int n, int m)
{
Console.Write( " { " );
for ( int i = 0; i < n; i++)
{
// initialize the minimum element
// as first element
int minm = mat[i, 0];
for ( int j = 1; j < m; j++)
{
// check if any element is smaller
// than the minimum element of the
// row and replace it
if (mat[i, j] < minm)
{
minm = mat[i, j];
}
}
// print the smallest element
// of the row
Console.Write(minm + ", " );
}
Console.WriteLine( "}" );
}
// function to find the minimum
// element of each column.
static void smallestInCol( int [,]mat,
int n, int m)
{
Console.Write( " { " );
for ( int i = 0; i < m; i++)
{
// initialize the minimum element
// as first element
int minm = mat[0, i];
// Run the inner loop for columns
for ( int j = 1; j < n; j++)
{
// check if any element is smaller
// than the minimum element of the
// column and replace it
if (mat[j, i] < minm)
{
minm = mat[j, i];
}
}
// print the smallest element
// of the row
Console.Write(minm + ", " );
}
Console.Write( "}" );
}
// Driver code
public static void Main()
{
int n = 3, m = 3;
int [,]mat = {{2, 1, 7},
{3, 7, 2},
{5, 4, 9}};
Console.Write( "Minimum element of " +
"each row is " );
smallestInRow(mat, n, m);
Console.Write( " Minimum element of " +
"each column is " );
smallestInCol(mat, n, m);
}
}
// This code is contributed
// by 29AjayKumar

PHP

<?php
// PHP program to find the minimum
// element of each row and each column
$MAX = 100;
// function to find the minimum
// element of each row.
function smallestInRow(& $mat , $n , $m )
{
echo " { " ;
for ( $i = 0; $i < $n ; $i ++)
{
// initialize the minimum element
// as first element
$minm = $mat [ $i ][0];
for ( $j = 1; $j < $m ; $j ++)
{
// check if any element is smaller
// than the minimum element of the
// row and replace it
if ( $mat [ $i ][ $j ] < $minm )
$minm = $mat [ $i ][ $j ];
}
// print the smallest element
// of the row
echo $minm . ", " ;
}
echo "}" ;
}
// function to find the minimum
// element of each column.
function smallestInCol(& $mat , $n , $m )
{
echo " { " ;
for ( $i = 0; $i < $m ; $i ++)
{
// initialize the minimum element
// as first element
$minm = $mat [0][ $i ];
// Run the inner loop for columns
for ( $j = 1; $j < $n ; $j ++)
{
// check if any element is smaller
// than the minimum element of the column
// and replace it
if ( $mat [ $j ][ $i ] < $minm )
$minm = $mat [ $j ][ $i ];
}
// print the smallest element of the row
echo $minm . ", " ;
}
echo "}" ;
}
// Driver code
$n = 3;
$m = 3;
$mat = array ( array ( 2, 1, 7 ),
array ( 3, 7, 2 ),
array ( 5, 4, 9 ));
echo "Minimum element of each row is " ;
smallestInRow( $mat , $n , $m );
echo " Minimum element of each column is " ;
smallestInCol( $mat , $n , $m );
// This code is contributed by ita_c
?>

Javascript

<script>
// Java script program to find the minimum
// element of each row and each column
let MAX = 100;
// function to find the minimum
// element of each row.
function smallestInRow(mat,n,m) {
document.write( " { " );
for (let i = 0; i < n; i++) {
// initialize the minimum element
// as first element
let minm = mat[i][0];
for (let j = 1; j < m; j++) {
// check if any element is smaller
// than the minimum element of the row
// and replace it
if (mat[i][j] < minm) {
minm = mat[i][j];
}
}
// print the smallest element of the row
document.write(minm + ", " );
}
document.write( "}" + "<br>" );
}
// function to find the minimum
// element of each column.
function smallestInCol(mat,n,m) {
document.write( " { " );
for (let i = 0; i < m; i++) { <