logo

std::max w C++

C++ std::max funkcja jest wbudowaną funkcją zdefiniowaną w pliku nagłówkowym i służy do znalezienia największej przekazanej do niej liczby. Zwraca pierwszy z nich, jeśli jest ich więcej.

Można to zaimplementować w następujący sposób:



  1. Porównuje dwie liczby przekazane w swoich argumentach i zwraca większą z nich oraz jeśli oba są równe, zwraca pierwszy.
  2. Może także porównać dwie liczby za pomocą a funkcja binarna , który jest zdefiniowany przez użytkownika, a następnie przekazany jako argument w std::max().
  3. Jest to również pomocne, jeśli chcemy znaleźć największy element na danej liście i zwraca pierwszą, jeśli na liście jest więcej niż jeden.

1. Do porównywania elementów przy użyciu <:

Składnia:

const T& max (const T& a , const T& b );>

Parametry:

    a: wartość do porównania b: wartość do porównania

Wartość zwracana:



  • Zwraca większą z dwóch wartości.
  • Jeśli oba są równe, zwraca pierwszą wartość.

Notatka : T to nazwa typu zdefiniowana w szablonie klasy.

Przykład:

C++






strony takie jak coomeet

// C++ program to demonstrate> // the use of std::max> #include> #include> using> namespace> std;> // Driver code> int> main()> {> >// Comparing ASCII values of a and b> >cout << std::max(>'a'>,>'b'>) <<>' '>;> >// Returns the first one if both> >// the numbers are same> >cout << std::max(7, 7);> >return> 0;> }>

>

>

Wyjście

b 7>

Złożoność czasowa: O(1)
Przestrzeń pomocnicza: O(1)

2. Aby porównać elementy za pomocą predefiniowanej funkcji:

Składnia:

const T& max (const T& a , const T& b , Compare comp );>

Parametry:

    a: wartość do porównania b: wartość do porównania comp: Funkcja binarna, która przyjmuje dwie wartości typu T jako argumenty i zwraca wartość konwertowaną na wartość bool. Zwrócona wartość wskazuje, czy element przekazany jako pierwszy argument jest uważany za mniejszy niż drugi.

Wartość zwracana:

  • Zwraca większą z dwóch wartości.
  • Jeśli oba są równe, zwróć pierwszą wartość.

Przykład:

uruchamianie skryptów w systemie Linux

C++




// C++ program to demonstrate> // the use of std::max> #include> #include> using> namespace> std;> // Defining the binary function> bool> comp(>int> a,>int> b)> {> >return> (a } // Driver code int main() { int a = 7; int b = 28; cout << std::max(a,b,comp) << ' '; // Returns the first one if both // the numbers are same cout << std::max(7,7,comp); return 0; }>

>

lista tablicowa i lista połączona

>

Wyjście

28 7>

Złożoność czasowa: O(1)
Przestrzeń pomocnicza: O(1)

3. Aby znaleźć maksymalny element na liście:

Składnia:

T max (initializer_list il , Compare comp );>

Parametry:

    il: Obiekt inicjujący_listę. comp: funkcja komparatora, która jest opcjonalna i można ją pominąć.

Wartość zwracana: Zwracana jest największa wartość z listy.

Poniżej znajduje się program C++ służący do znajdowania maksymalnego elementu na liście:

CPP

10 z 50,00




// C++ program to demonstrate> // the use of std::max> #include> #include> using> namespace> std;> // Defining the binary function> bool> comp(>int> a,>int> b)> {> >return> (a } // Driver code int main() { // Finding the largest of all the numbers cout << std::max({1, 2, 3, 4, 5, 10, -1, 7},comp) << ' '; return 0; }>

>

>

Wyjście

10>

Złożoność czasowa: NA)
Przestrzeń pomocnicza: O(1)

Powiązane artykuły:

  • std::max_element
  • std::min
  • std::równe
  • std::min_element w C++