logo

std::max i C++

C++ std::max funktion är en inbyggd funktion som definieras i rubrikfilen och används för att ta reda på det största antalet som skickas till den. Den returnerar den första av dem om det finns fler än en.

Det kan implementeras på följande sätt:



  1. Den jämför de två talen som passerats i sina argument och returnerar det största av de två, och om båda är lika, returnerar den den första.
  2. Den kan också jämföra de två siffrorna med a binär funktion , som definieras av användaren och skickas sedan som ett argument i std::max().
  3. Det är också användbart om vi vill hitta största elementet i en given lista, och den returnerar den första om det finns mer än en i listan.

1. För att jämföra element med <:

Syntax:

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

Parametrar:

    a: värde som ska jämföras b: värde som ska jämföras

Returvärde:



  • Returnerar det största av de två värdena.
  • Om båda är lika, returnerar det första värdet.

Notera : T är typnamnet definierat i klassmallen.

Exempel:

C++






polymorfism java

// 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;> }>

>

>

Produktion

b 7>

Tidskomplexitet: O(1)
Hjälputrymme: O(1)

1nf 2nf 3nf

2. För att jämföra element med en fördefinierad funktion:

Syntax:

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

Parametrar:

    a: värde som ska jämföras b: värde som ska jämföras comp: Binär funktion som accepterar två värden av typ T som argument och returnerar ett värde som kan konverteras till bool. Det returnerade värdet indikerar om elementet som skickats som det första argumentet anses vara mindre än det andra.

Returvärde:

  • Returnerar det största av de två värdena.
  • Om båda är lika, returnera det första värdet.

Exempel:

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; }>

>

zip-kommando i linux

>

Produktion

28 7>

Tidskomplexitet: O(1)
Hjälputrymme: O(1)

3. För att hitta det maximala elementet i en lista:

Syntax:

T max (initializer_list il , Compare comp );>

Parametrar:

    il: Ett initializer_list-objekt. comp: komparatorfunktion som är valfri och kan hoppa över.

Returvärde: Listans största värde returneras.

Nedan är C++-programmet för att hitta det maximala elementet i en lista:

CPP




array java
// 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; }>

>

>

Produktion

10>

Tidskomplexitet: På)
Hjälputrymme: O(1)

Relaterade artiklar:

  • std::max_element
  • std::min
  • std::lika
  • std::min_element i C++