2009-05-20 4 views
1

Existe-t-il un moyen de trouver le plus grand conteneur à l'intérieur d'un conteneur en utilisant STL? ATM, j'ai cette façon assez naïve de le faire:Existe-t-il un moyen pratique de trouver le plus grand élément dans un conteneur en utilisant STL?

 

int main() 
{ 
     std::vector<std::vector<int> > v; 

     ... 

     unsigned int h = 0; 

     for (std::vector<std::vector<int> >::iterator i = v.begin(); i != v.end(); ++i) { 
       if (*i.size() > h) { 
         h = *i.size(); 
       } 
     } 
} 
 
+0

Le plus grand contenant ou la taille de la plus grande? –

Répondre

17

Vous pouvez toujours utiliser std::max_element et passer un comparateur personnalisé qui compare la taille de deux std::vector<int> comme arguments.

+0

+1 algorithmes STL FTW! – paxos1977

0

Avez-vous envisagé de trier le récipient en utilisant les méthodes de tri STL?

+1

pourquoi serait-ce une bonne solution? –

0

Vous pouvez utiliser rapidement sélectionner, puis sélectionnez la valeur à l'extrémité extrême:

Quick Select