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:
- Porównuje dwie liczby przekazane w swoich argumentach i zwraca większą z nich oraz jeśli oba są równe, zwraca pierwszy.
- 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().
- 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++