std::max in C++

C++ standard::max La funzione è una funzione incorporata definita all'interno del file di intestazione e viene utilizzata per scoprire il numero più grande che gli viene passato. Restituisce il primo se ce n'è più di uno.

Può essere implementato nei seguenti modi:

  1. Confronta i due numeri passati nei suoi argomenti e restituisce il maggiore dei due, e se entrambi sono uguali, restituisce il primo.
  2. Può anche confrontare i due numeri utilizzando a funzione binaria , che viene definito dall'utente e quindi passato come argomento in std::max().
  3. È anche utile se vogliamo trovare il file elemento più grande in un dato elenco e restituisce il primo se ce n'è più di uno presente nell'elenco.

1. Per confrontare gli elementi utilizzando <:

Sintassi:

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

parametri:

    a: valore da confrontare b: valore da confrontare

Valore di ritorno:

  • Restituisce il maggiore dei due valori.
  • Se entrambi sono uguali, restituisce il primo valore.

Nota : T è il nome del tipo definito nel modello di classe.

Esempio:

C++




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

Produzione

b 7 

Complessità temporale: O(1)
Spazio ausiliario: O(1)

2. Per confrontare elementi utilizzando una funzione predefinita:

Sintassi:

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

parametri:

    a: valore da confrontare b: valore da confrontare comp: funzione binaria che accetta due valori di tipo T come argomenti e restituisce un valore convertibile in bool. Il valore restituito indica se l'elemento passato come primo argomento è considerato minore del secondo.

Valore di ritorno:

  • Restituisce il maggiore dei due valori.
  • Se entrambi sono uguali, restituisce il primo valore.

Esempio:

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

Produzione

28 7 

Complessità temporale: O(1)
Spazio ausiliario: O(1)

3. Per trovare l'elemento massimo in un elenco:

Sintassi:

T max (initializer_list il , Compare comp ); 

parametri:

    il: un oggetto inizializzatore_list. comp: funzione comparatrice che è opzionale e può essere saltata.

Valore di ritorno: Viene restituito il valore più grande dell'elenco.

Di seguito è riportato il programma C++ per trovare l'elemento massimo in un elenco:

CPP




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

Produzione

10 

Complessità temporale: SU)
Spazio ausiliario: O(1)

Articoli Correlati:

  • std::max_elemento
  • standard::min
  • std::uguale
  • std::min_element in C++