Uzyskaj wartości maksymalne i minimalne w tablicy Ruby

Uzyskaj wartości maksymalne i minimalne w tablicy Ruby

W tym samouczku dowiemy się, jak korzystać z różnych metod z klasy tablicy w języku programowania Ruby. Klasa tablicy ma dostęp do modułu wymyślnego, który zapewnia zestaw metod interakcji z elementami tablicy.

Uzyskaj maksymalną wartość w tablicy w Ruby

Możemy użyć metody tablicy#max, aby znaleźć maksymalną wartość z danego zestawu elementów. Metoda zwraca element, a nie położenie elementu maksymalnego w tablicy.

Metoda pozwala nam również zwrócić więcej niż jedną wartość, określając liczbę wartości do pobrania jako argument.

Możemy wyrazić składnię funkcji w następujący sposób:

szyk.Max ()


Aby zwrócić więcej niż jedną wartość, możemy użyć składni w następujący sposób:

szyk.Max ([n])


Gdzie n jest opcjonalnym parametrem, który określa liczbę elementów zwracanych przez funkcję. Zwraca to wartości w kolejności malejącej.

Funkcja zwraca wartość

Funkcja zwraca tablicę zawierającą maksymalne wartości określone w parametrze N. Jeśli n nie jest dostarczone, funkcja zwraca jedną wartość.

Przykładowe użycie funkcji

Poniższy przykład pokazuje użycie funkcji z szeregiem wartości liczb całkowitych:

IRB (Main): 001: 0> arr = [10,22,12,100,121,239]
=> [10, 22, 12, 100, 121, 239]
IRB (Main): 002: 0> ARR.Max
=> 239


Funkcja w tym przypadku zwraca najwyższą wartość z tablicy wejściowej. Aby uzyskać trzy najwyższe wartości, możemy przekazać wartość n, jak pokazano:

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


W takim przypadku funkcja zwraca tablicę z trzema najwyższymi wartościami w kolejności malejącej.

Możemy również użyć funkcji, aby pobrać maksymalną wartość z szeregu ciągów. Przykładowa demonstracja jest następująca:

IRB (Main): 004: 0> arr = ['mysql', „postgresql”, „redis”, „SQL Server”]
=> [„MySQL”, „Postgresql”, „Redis”, „SQL Server”]
IRB (Main): 005: 0> ARR.Max
=> „SQL Server”


W takim przypadku funkcja sortuje ciąg na podstawie znaków ciągu wejściowego. Im wyższe znaki są w indeksie alfabetycznym, tym wyższa wartość.

Jest to podobny przypadek dla szeregu znaków, jak pokazano następująco:

IRB (Main): 008: 0> arr = ['a', 'b', 'c', 'z', 'q']
=> [„A”, „B”, „C”, „Z”, „Q”]
IRB (Main): 009: 0> ARR.Max
=> „Z”


W takim przypadku funkcja zwraca znak o najwyższym wskaźniku alfabetycznym.

IRB (Main): 010: 0> ARR.Max (3)
=> [„Z”, „Q”, „C”]

Uzyskaj minimalną wartość w tablicy w Ruby

Możemy pobrać minimalną wartość z tablicy za pomocą funkcji tablicy#min (). Funkcja jest zgodna z podobną składnią do funkcji MAX, jak pokazano następująco:

szyk.min ()


Aby uzyskać więcej niż jeden element z tablicy, użyj następującego polecenia:

szyk.Min (n)


Gdzie n odnosi się do liczby elementów o najwyższych lub minimalnych wartościach.

Przykładowa demonstracja jest następująca:

strings = [„hello”, „świat”]
ints = [1,2,3,4,5]
Chars = [„a”, „b”, „x”, „c”]
IRB (Main): 018: 0> struny.min
=> "Hello"
IRB (Main): 019: 0> ints.min
=> 1
IRB (Main): 020: 0> znaki.min
=> „A”


Jak widzimy, funkcja zwraca najmniejszą wartość w danej tablicy. W przypadku znaków i ciągów funkcja sortuje wartości na podstawie ich pozycji w kolejności alfabetycznej.

Wniosek

Zbadaliśmy, w jaki sposób możemy użyć funkcji tablicy#max i tablicy#min, aby pobrać maksymalne i minimalne wartości z tablicy w Ruby.