Obtenga los valores máximos y mínimos en una matriz de Ruby

Obtenga los valores máximos y mínimos en una matriz de Ruby

En este tutorial, aprenderemos cómo usar los diversos métodos de la clase de matriz en el lenguaje de programación de Ruby. La clase de matriz tiene acceso al módulo enumerable que proporciona un conjunto de métodos para interactuar con los elementos de la matriz.

Obtenga el valor máximo en una matriz en Ruby

Podemos usar el método matriz#max para encontrar el valor máximo de un conjunto dado de elementos. El método devuelve el elemento y no la posición del elemento máximo en la matriz.

El método también nos permite devolver más de un valor especificando el número de valores para obtener como argumento.

Podemos expresar la sintaxis de la función de la siguiente manera:

formación.max ()


Para devolver más de un valor, podemos usar la sintaxis de la siguiente manera:

formación.max ([n])


Donde n es un parámetro opcional que determina el número de elementos que devuelven la función. Esto devuelve los valores en orden descendente.

Valor de retorno de la función

La función devuelve una matriz que contiene los valores máximos que se especifican en el parámetro n. Si no se proporciona N, la función devuelve un solo valor.

Uso de la función de ejemplo

El siguiente ejemplo demuestra el uso de la función con una matriz de valores enteros:

IRB (principal): 001: 0> arr = [10,22,12,100,121,239]
=> [10, 22, 12, 100, 121, 239]
IRB (principal): 002: 0> arr.máximo
=> 239


La función devuelve el valor más alto de la matriz de entrada en este caso. Para obtener los tres valores más altos, podemos pasar el valor de N como se muestra:

IRB (principal): 003: 0> arr.Max (3)
=> [239, 121, 100]


En este caso, la función devuelve una matriz con los tres valores más altos en orden descendente.

También podemos usar la función para obtener el valor máximo de una matriz de cadenas. Una demostración de ejemplo es la siguiente:

IRB (Main): 004: 0> arr = ['mysql', 'PostgreSQL', 'Redis', 'SQL Server']
=> ["Mysql", "postgreSQL", "redis", "servidor sql"]
IRB (principal): 005: 0> arr.máximo
=> "SQL Server"


En este caso, la función clasifica la cadena en función de los caracteres de la cadena de entrada. Cuanto más altos son los caracteres en el índice alfabético, mayor es el valor.

Este es un caso similar para una variedad de caracteres, como se demuestra en lo siguiente:

irb (principal): 008: 0> arr = ['a', 'b', 'c', 'z', 'q']
=> ["A", "B", "C", "Z", "Q"]
IRB (principal): 009: 0> arr.máximo
=> "Z"


En este caso, la función devuelve el carácter con el índice alfabético más alto.

irb (principal): 010: 0> arr.Max (3)
=> ["Z", "Q", "C"]

Obtenga el valor mínimo en una matriz en Ruby

Podemos obtener el valor mínimo de una matriz utilizando la función de matriz#min (). La función sigue una sintaxis similar a la función MAX como se muestra en lo siguiente:

formación.min ()


Para obtener más de un elemento de la matriz, use el siguiente comando:

formación.Minnesota)


Donde n se refiere al número de elementos con los valores más altos o mínimos.

Una demostración de ejemplo es la siguiente:

Strings = ['Hola', 'Mundo']
ints = [1,2,3,4,5]
chars = ['a', 'b', 'x', 'c']
IRB (principal): 018: 0> cuerdas.mínimo
=> "Hola"
irb (principal): 019: 0> ints.mínimo
=> 1
IRB (principal): 020: 0> chars.mínimo
=> "A"


Como podemos ver, la función devuelve el valor más pequeño en una matriz determinada. En el caso de caracteres y cadenas, la función clasifica los valores basados ​​en sus posiciones en orden alfabético.

Conclusión

Exploramos cómo podemos usar las funciones de matriz#max y matriz#min para obtener los valores máximos y mínimos de una matriz en Ruby.