logo

std::max i C++

C++ std::max funktion er en indbygget funktion defineret inde i header-filen og bruges til at finde ud af det største antal, der sendes til den. Den returnerer den første af dem, hvis der er mere end én.

Det kan implementeres på følgende måder:



  1. Den sammenligner de to tal, der er bestået i sine argumenter og returnerer det største af de to, og hvis begge er ens, så returnerer det den første.
  2. Den kan også sammenligne de to tal ved hjælp af a binær funktion , som er defineret af brugeren, og derefter sendt som et argument i std::max().
  3. Det er også nyttigt, hvis vi ønsker at finde største element i en given liste, og den returnerer den første, hvis der er mere end én til stede på listen.

1. Til sammenligning af elementer som ved at bruge <:

Syntaks:

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

Parametre:

    a: værdi, der skal sammenlignes b: værdi, der skal sammenlignes

Returneringsværdi:



  • Returnerer den største af de to værdier.
  • Hvis begge er ens, returnerer den første værdi.

Bemærk : T er typenavnet defineret i klasseskabelonen.

Eksempel:

C++






java throw undtagelse

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

Tidskompleksitet: O(1)
Hjælpeplads: O(1)

vlc for at downloade youtube-videoer

2. Til sammenligning af elementer ved hjælp af en foruddefineret funktion:

Syntaks:

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

Parametre:

    a: værdi, der skal sammenlignes b: værdi, der skal sammenlignes comp: Binær funktion, der accepterer to værdier af typen T som argumenter, og returnerer en værdi, der kan konverteres til bool. Den returnerede værdi angiver, om elementet, der blev sendt som det første argument, anses for at være mindre end det andet.

Returneringsværdi:

  • Returnerer den største af de to værdier.
  • Hvis begge er ens, returner den første værdi.

Eksempel:

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

>

shehzad poonawala

>

Produktion

28 7>

Tidskompleksitet: O(1)
Hjælpeplads: O(1)

3. For at finde det maksimale element på en liste:

Syntaks:

T max (initializer_list il , Compare comp );>

Parametre:

    il: Et initializer_list-objekt. comp: komparatorfunktion som er valgfri og kan springes over.

Returneringsværdi: Den største værdi af listen returneres.

Nedenfor er C++-programmet til at finde det maksimale element i en liste:

CPP




ugyldig 0
// 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>

Tidskompleksitet: På)
Hjælpeplads: O(1)

Relaterede artikler:

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