Рубрики

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

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

Примеры:

Input: [1, 2, 3]
        [1, 4, 9]
        [76, 34, 21]
Output: Minimum element of each row is {1, 1, 21}
Minimum element of each column is {1, 2, 3}

Input: [1, 2, 3, 21]
       [12, 1, 65, 9]
       [11, 56, 34, 2]
Output: Minimum element of each row is {1, 1, 21}
Minimum element of each column is {1, 2, 3}

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

Ниже приведена реализация вышеуказанного подхода:

C ++

// C ++ программа для поиска минимума
// элемент каждой строки и каждого столбца
#include<bits/stdc++.h>

using namespace std;

const int MAX = 100;

  
// функция для поиска минимума
// элемент каждой строки.

void smallestInRow(int mat[][MAX], int n, int m)

{

    cout << " { ";

    for (int i = 0; i < n; i++) {

  

        // инициализируем минимальный элемент

        // как первый элемент

        int minm = mat[i][0];

  

        for (int j = 1; j < m; j++) {

  

            // проверяем, меньше ли какой-либо элемент

            // чем минимальный элемент строки

            // и заменить его

            if (mat[i][j] < minm)

                minm = mat[i][j];

        }

  

        // выводим наименьший элемент строки

        cout << minm << ", ";

    }

    cout << "}";

}

  
// функция для поиска минимума
// элемент каждого столбца.

void smallestInCol(int mat[][MAX], int n, int m)

{

  

    cout << " { ";

    for (int i = 0; i < m; i++) {

  

        // инициализируем минимальный элемент

        // как первый элемент

        int minm = mat[0][i];

  

        // Запускаем внутренний цикл для столбцов

        for (int j = 1; j < n; j++) {

  

            // проверяем, меньше ли какой-либо элемент

            // чем минимальный элемент столбца

            // и заменить его

            if (mat[j][i] < minm)

                minm = mat[j][i];

        }

  

        // выводим наименьший элемент строки

        cout << minm << ", ";

    }

  

    cout << "}";

}

  
// Код драйвера

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 << "\nMinimum element of each column is ";

    smallestInCol(mat, n, m);

  

    return 0;

}

Джава

// Java программа для поиска минимума
// элемент каждой строки и каждого столбца

  

public class GFG {

  

    final static int MAX = 100;

  
// функция для поиска минимума
// элемент каждой строки.

    static void smallestInRow(int mat[][], int n, int m) {

        System.out.print(" { ");

        for (int i = 0; i < n; i++) {

  

            // инициализируем минимальный элемент

            // как первый элемент

            int minm = mat[i][0];

  

            for (int j = 1; j < m; j++) {

  

                // проверяем, меньше ли какой-либо элемент

                // чем минимальный элемент строки

                // и заменить его

                if (mat[i][j] < minm) {

                    minm = mat[i][j];

                }

            }

  

            // выводим наименьший элемент строки

            System.out.print(minm + ", ");

        }

        System.out.println("}");

    }

  
// функция для поиска минимума
// элемент каждого столбца.

    static void smallestInCol(int mat[][], int n, int m) {

  

        System.out.print(" { ");

        for (int i = 0; i < m; i++) {

  

            // инициализируем минимальный элемент

            // как первый элемент

            int minm = mat[0][i];

  

            // Запускаем внутренний цикл для столбцов

            for (int j = 1; j < n; j++) {

  

                // проверяем, меньше ли какой-либо элемент

                // чем минимальный элемент столбца

                // и заменить его

                if (mat[j][i] < minm) {

                    minm = mat[j][i];

                }

            }

  

            // выводим наименьший элемент строки

            System.out.print(minm + ", ");

        }

  

        System.out.print("}");

    }

  
// Код драйвера

    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("\nMinimum element of each column is ");

        smallestInCol(mat, n, m);

    }

}

  
/ * Этот код предоставлен 29AjayKumar * /

python3

# Python 3 программа для поиска минимума

  

MAX = 100

  
# функция, чтобы найти минимум
# элемент каждой строки.

def smallestInRow(mat, n, m):

    print("{", end = "")

    for i in range(n):

          

        # инициализировать минимальный элемент

        # как первый элемент

        minm = mat[i][0]

  

        for j in range(1, m, 1):

              

            # проверить, меньше ли какой-либо элемент

            # чем минимальный элемент

            # грести и заменить

            if (mat[i][j] < minm):

                minm = mat[i][j]

          

        # печатать самый маленький элемент

        № строки

        print(minm, end = ",")

  

    print("}")

  
# функция, чтобы найти минимум
# элемент каждого столбца.

def smallestInCol(mat, n, m):

    print("{", end = "")

    for i in range(m):

          

        # инициализировать минимальный элемент

        # как первый элемент

        minm = mat[0][i]

  

        # Запустить внутренний цикл для столбцов

        for j in range(1, n, 1):

              

            # проверить, меньше ли какой-либо элемент

            # чем минимальный элемент

            # столбец и замени его

            if (mat[j][i] < minm):

                minm = mat[j][i]

  

        # печатать самый маленький элемент

        № строки

        print(minm, end = ",")

  

    print("}")

  
# Код драйвера

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)

  
# Этот код предоставлен
# Shashank_Sharma

C #

// C # программа для поиска минимума
// элемент каждой строки и каждого столбца

using System;

  

class GFG

  

readonly static int MAX = 100; 

  
// функция для поиска минимума
// элемент каждой строки.

static void smallestInRow(int [,]mat, 

                          int n, int m) 

    Console.Write(" { "); 

      

    for (int i = 0; i < n; i++) 

    

  

        // инициализируем минимальный элемент

        // как первый элемент

        int minm = mat[i, 0]; 

  

        for (int j = 1; j < m; j++) 

        

  

            // проверяем, меньше ли какой-либо элемент

            // чем минимальный элемент

            // грести и заменить

            if (mat[i, j] < minm) 

            

                minm = mat[i, j]; 

            

        

  

        // печатаем самый маленький элемент

        // строки

        Console.Write(minm + ", "); 

    

    Console.WriteLine("}"); 

  
// функция для поиска минимума
// элемент каждого столбца.

static void smallestInCol(int [,]mat, 

                          int n, int m)

  

    Console.Write(" { "); 

    for (int i = 0; i < m; i++)

    

  

        // инициализируем минимальный элемент

        // как первый элемент

        int minm = mat[0, i]; 

  

        // Запускаем внутренний цикл для столбцов

        for (int j = 1; j < n; j++) 

        

  

            // проверяем, меньше ли какой-либо элемент

            // чем минимальный элемент

            // столбец и заменить его

            if (mat[j, i] < minm) 

            

                minm = mat[j, i]; 

            

        

  

        // печатаем самый маленький элемент

        // строки

        Console.Write(minm + ", "); 

    

  

    Console.Write("}"); 

  
// Код драйвера

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("\nMinimum element of "

                        "each column is "); 

    smallestInCol(mat, n, m); 


  
// Этот код добавлен
// от 29AjayKumar

PHP

<?php 
// PHP программа для поиска минимума
// элемент каждой строки и каждого столбца

$MAX = 100;

  
// функция для поиска минимума
// элемент каждой строки.

function smallestInRow(&$mat, $n, $m)

{

    echo " { ";

    for ($i = 0; $i < $n; $i++) 

    {

  

        // инициализируем минимальный элемент

        // как первый элемент

        $minm = $mat[$i][0];

  

        for ($j = 1; $j < $m; $j++) 

        {

  

            // проверяем, меньше ли какой-либо элемент

            // чем минимальный элемент

            // грести и заменить

            if ($mat[$i][$j] < $minm)

                $minm = $mat[$i][$j];

        }

  

        // печатаем самый маленький элемент

        // строки

        echo $minm . ", ";

    }

    echo "}";

}

  
// функция для поиска минимума
// элемент каждого столбца.

function smallestInCol(&$mat, $n, $m)

{

    echo " { ";

    for ($i = 0; $i < $m; $i++) 

    {

  

        // инициализируем минимальный элемент

        // как первый элемент

        $minm = $mat[0][$i];

  

        // Запускаем внутренний цикл для столбцов

        for ($j = 1; $j < $n; $j++)

        {

  

            // проверяем, меньше ли какой-либо элемент

            // чем минимальный элемент столбца

            // и заменить его

            if ($mat[$j][$i] < $minm)

                $minm = $mat[$j][$i];

        }

  

        // выводим наименьший элемент строки

        echo $minm . ", ";

    }

  

    echo "}";

}

  
// Код драйвера

$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 "\nMinimum element of each column is ";

smallestInCol($mat, $n, $m);

  
// Этот код предоставлен ita_c
?>

Выход:

Minimum element of each row is  { 1, 2, 4, }
Minimum element of each column is  { 2, 1, 2, }

Временная сложность: O (n * m)

Рекомендуемые посты:

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

0.00 (0%) 0 votes