logo

C++-algoritmi max()

C++-algoritmi max() toimintoa voidaan käyttää kolmella tavalla:

dateformat.format java
  • Se vertaa kahta argumenteissaan annettua arvoa ja palauttaa suuremman niiden välillä . Jos molemmat ovat yhtä suuret, se palauttaa ensimmäisen.
  • Se myös vertaa kahta arvoa käyttämällä a binäärifunktio jonka käyttäjä määrittelee ja välitetään sitten argumenttina std::max(:ssa).
  • Sitä käytetään myös etsimään suurin elementti tietyssä luettelossa , ja se palauttaa ensimmäisen, jos luettelossa on useampi kuin yksi suurin.

Elementtejä verrataan käyttämällä operaattoriacomp toiselle versiolle.

Syntaksi

 default (1) template const T& max (const T& a, const T& b); //until C++ 11 custom (2) template const T& max (const T& a, const T& b, Compare comp); //until C++ 11 default (1) template const T& max (const T& a, const T& b); //until C++ 14 custom (2) template const T& max (const T& a, const T& b, Compare comp); //until C++ 14 initializer list (3) template T max (initializer_list il); template T max (initializer_list il, Compare comp); //until C++ 14 default (1) template constexpr const T& max (const T& a, const T& b); //since C++ 14 //since C++ 14 custom (2) template constexp const T& max(const T& a, const T& b, Compare comp); // since C++ 14 initializer list (3) template constexpr T max (initializer_list il); template constexpr T max (initializer_list il, Compare comp); //since C++ 14 

Parametri

a : Ensimmäinen vertailtava arvo.

b : Toinen vertailtava arvo.

comp : Käyttäjän määrittämä binääripredikaattifunktio, joka hyväksyy kaksi argumenttia ja palauttaa arvon tosi, jos molemmat argumentit ovat järjestyksessä, muuten se palauttaa epätosi. Siitä seuraa tiukka heikko järjestys elementtien tilaamiseksi.

string.format java-merkkijono

The : Initiazer_list, jossa on vertailtavat arvot.

Palautusarvo

Se palauttaa a:n ja b:n maksimin. Jos arvot ovat samat, se palauttaa a.

Palauttaa suurimman arvon il. Jos useat arvot vastaavat maksimiarvoa, palauttaa suurimman arvon.

Monimutkaisuus

Monimutkaisuus on lineaarinen yhdellä vähemmän kuin verrattujen elementtien lukumäärä.

mikä on maven

Poikkeukset

Tämä funktio tekee poikkeuksen, jos mikä tahansa vertailu tekee poikkeuksen.

Huomautus: Virheelliset parametrit aiheuttavat määrittelemättömän toiminnan.

Esimerkki 1

Katsotaanpa yksinkertainen esimerkki max(:n) käytön havainnollistamiseksi:

 #include #include #include using namespace std; int main() { cout << 'larger of 1 and 9999: ' << std::max(1, 9999) << '
' << 'larger of 'a', and 'b': ' << max('a', 'b') << '
' << 'longest of 'foo', 'bar', and 'hello': ' << max( { 'foo', 'bar', 'hello' }, [](const string& s1, const string& s2) { return s1.size() < s2.size(); }) << '
'; return 0; } 

Lähtö:

 larger of 1 and 9999: 9999 larger of 'a', and 'b': b longest of 'foo', 'bar', and 'hello': hello 

Esimerkki 2

Katsotaanpa toinen yksinkertainen esimerkki max():n käytön oletusversiolla:

 #include // std::cout #include // std::max using namespace std; int main () { cout << 'max(1,2)==' << max(1,2) << '
'; cout << 'max(2,1)==' << max(2,1) << '
'; cout << 'max('a','z')==' << max('a','z') << '
'; cout << 'max(3.14,2.73)==' << max(3.14,2.73) << '
'; return 0; } 

Lähtö:

 max(1,2)==2 max(2,1)==2 max('a','z')==z max(3.14,2.73)==3.14 

Esimerkki 3

Katsotaanpa toinen yksinkertainen esimerkki max()-funktion käytön osoittamiseksi vertailufunktiolla:

 #include #include using namespace std; // Defining the binary function bool comp(int a, int b) { return (a <b); } int main() { a="7;" b="28;" cout << max(a,b,comp) '
'; returns the first one if both numbers are same max(7,7,comp); return 0; < pre> <p> <strong>Output:</strong> </p> <pre> 28 7 </pre> <h2>Example 4</h2> <p>Let&apos;s see a simple example to find the maximum element in the list:</p> <pre> #include #include using namespace std; // Defining the binary function bool comp(int a, int b) { return (a <b); } int main() { finding the largest of all numbers cout << 'maximum element is: '<< max({1, 2, 3, 4, 5, 10, -1, 7},comp) '
'; return 0; < pre> <p> <strong>Output:</strong> </p> <pre> Maximum element is: 10 </pre> <br></b);></pre></b);>

Esimerkki 4

Katsotaanpa yksinkertainen esimerkki luettelon enimmäiselementin löytämiseksi:

nimeä Linuxin hakemisto uudelleen
 #include #include using namespace std; // Defining the binary function bool comp(int a, int b) { return (a <b); } int main() { finding the largest of all numbers cout << \'maximum element is: \'<< max({1, 2, 3, 4, 5, 10, -1, 7},comp) \'
\'; return 0; < pre> <p> <strong>Output:</strong> </p> <pre> Maximum element is: 10 </pre> <br></b);>