Programa para encontrar el máximo elemento en una Array

Dada una array NxM. La tarea es encontrar el elemento máximo en esta array.
Ejemplos
 

Input: mat[4][4] = {{1, 2, 3, 4},
                    {25, 6, 7, 8},
                    {9, 10, 11, 12},
                    {13, 14, 15, 16}};
Output: 25

Input: mat[3][4] = {{9, 8, 7, 6},
                    {5, 4, 3, 2},
                    {1, 0, 12, 45}};
Output: 45

Enfoque: La idea es atravesar la array utilizando dos bucles anidados, uno para filas y otro para columnas y encontrar el elemento máximo. Inicialice una variable maxElement con un valor mínimo y recorra la array y compare cada vez si el elemento actual es mayor que un maxElement. En caso afirmativo, actualice maxElement con el elemento actual.
A continuación se muestra la implementación del enfoque anterior: 
 

C++

// CPP code to find max element in a matrix
#include <bits/stdc++.h>
using namespace std;
 
#define N 4
#define M 4
 
// Function to find max element
// mat[][] : 2D array to find max element
int findMax(int mat[N][M])
{
 
    // Initializing max element as INT_MIN
    int maxElement = INT_MIN;
 
    // checking each element of matrix
    // if it is greater than maxElement,
    // update maxElement
    for (int i = 0; i < N; i++) {
        for (int j = 0; j < M; j++) {
            if (mat[i][j] > maxElement) {
                maxElement = mat[i][j];
            }
        }
    }
 
    // finally return maxElement
    return maxElement;
}
 
// Driver code
int main()
{
 
    // matrix
    int mat[N][M] = { { 1, 2, 3, 4 },
                      { 25, 6, 7, 8 },
                      { 9, 10, 11, 12 },
                      { 13, 14, 15, 16 } };
 
    cout << findMax(mat) << endl;
 
    return 0;
}

Java

// Java code to find max element in a matrix
 
public class GFG {
     
    final static int N = 4;
    final static int  M = 4 ;
 
    // Function to find max element
    // mat[][] : 2D array to find max element
    static int findMax(int mat[][])
    {
 
        // Initializing max element as INT_MIN
        int maxElement = Integer.MIN_VALUE;
 
        // checking each element of matrix
        // if it is greater than maxElement,
        // update maxElement
        for (int i = 0; i < N; i++) {
            for (int j = 0; j < M; j++) {
                if (mat[i][j] > maxElement) {
                    maxElement = mat[i][j];
                }
            }
        }
 
        // finally return maxElement
        return maxElement;
    }
 
     
    // Driver code
    public static void main(String args[])
    {
           // matrix
        int mat[][] = { { 1, 2, 3, 4 },
                          { 25, 6, 7, 8 },
                          { 9, 10, 11, 12 },
                          { 13, 14, 15, 16 } };
 
        System.out.println(findMax(mat)) ;
   
    }
    // This Code is contributed by ANKITRAI1
}

Python3

# Python 3 code to find max element
# in a matrix
import sys
N = 4
M = 4
 
# Function to find max element
# mat[][] : 2D array to find max element
def findMax(mat):
     
    # Initializing max element as INT_MIN
    maxElement = -sys.maxsize - 1
 
    # checking each element of matrix
    # if it is greater than maxElement,
    # update maxElement
    for i in range(N):
        for j in range(M):
            if (mat[i][j] > maxElement):
                maxElement = mat[i][j]
         
    # finally return maxElement
    return maxElement
 
# Driver code
if __name__ == '__main__':
     
    # matrix
    mat = [[1, 2, 3, 4],
           [25, 6, 7, 8],
           [9, 10, 11, 12],
           [13, 14, 15, 16]]
    print(findMax(mat))
 
# This code is contributed by
# Surendra_Gangwar

C#

// C# code to find max element in a matrix
using System;
 
class GFG {
     
    static int N = 4;
    static int M = 4 ;
 
    // Function to find max element
    // mat[,] : 2D array to find max element
    static int findMax(int[,] mat)
    {
 
        // Initializing max element as INT_MIN
        int maxElement = int.MinValue;
 
        // checking each element of matrix
        // if it is greater than maxElement,
        // update maxElement
        for (int i = 0; i < N; i++) {
             
            for (int j = 0; j < M; j++) {
                 
                if (mat[i,j] > maxElement) {
                     
                    maxElement = mat[i,j];
                }
            }
        }
 
        // finally return maxElement
        return maxElement;
    }
 
     
    // Driver code
    public static void Main()
    {
         
        // matrix
        int[,]mat = {{ 1, 2, 3, 4},
                     {25, 6, 7, 8},
                     {9, 10, 11, 12},
                     {13, 14, 15, 16}};
 
        Console.Write(findMax(mat)) ;
    }
     
}
 
// This code is contributed by ChitraNayal

PHP

<?php
// PHP code to find max element in a matrix
 
// Function to find max element
// mat[][] : 2D array to find max element
function findMax($mat)
{
 
    // Initializing max element as INT_MIN
    $maxElement = PHP_INT_MIN;
 
    // checking each element of matrix
    // if it is greater than maxElement,
    // update maxElement
    for ($i = 0; $i < 4; $i++)
    {
        for ($j = 0; $j < 4; $j++)
        {
            if ($mat[$i][$j] > $maxElement)
            {
                $maxElement = $mat[$i][$j];
            }
        }
    }
 
    // finally return maxElement
    return $maxElement;
}
 
// Driver code
$mat = array(array(1, 2, 3, 4),
             array(25, 6, 7, 8),
             array(9, 10, 11, 12),
             array(13, 14, 15, 16));
 
echo findMax($mat) . "\n";
 
// This code is contributed
// by Akanksha Rai
?>

Javascript

<script>
// Java script code to find max element in a matrix
 
let N = 4;
    let M = 4 ;
 
    // Function to find max element
    // mat[][] : 2D array to find max element
    function findMax(mat)
    {
 
        // Initializing max element as INT_MIN
        let maxElement = Number.MIN_VALUE;
 
        // checking each element of matrix
        // if it is greater than maxElement,
        // update maxElement
        for (let i = 0; i < N; i++) {
            for (let j = 0; j < M; j++) {
                if (mat[i][j] > maxElement) {
                    maxElement = mat[i][j];
                }
            }
        }
 
        // finally return maxElement
        return maxElement;
    }
 
     
    // Driver code
     
        // matrix
        let mat = [[ 1, 2, 3, 4 ],
                        [ 25, 6, 7, 8 ],
                        [ 9, 10, 11, 12 ],
                        [ 13, 14, 15, 16 ]];
 
        document.write(findMax(mat)) ;
 
// This code is contributed by manoj
</script>
Producción: 

25

 

Complejidad de tiempo : O(N*M)
 

Publicación traducida automáticamente

Artículo escrito por barykrg y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *