2009-05-20 5 views
1

Gibt es eine Möglichkeit, den größten Container in einem Container mit STL zu finden? ATM, ich habe diese eher naiv Art und Weise tun:Gibt es eine praktische Möglichkeit, das größte Element im Container mit STL zu finden?

 

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

Größter Behälter oder Größe der größten? –

Antwort

17

Sie immer std::max_element verwenden und einen benutzerdefinierten Komparator übergeben, die die Größe von zwei std::vector<int> als Argumente vergleicht.

+0

+1 STL-Algorithmen FTW! – paxos1977

0

Haben Sie darüber nachgedacht, den Behälter Sortieren der STL Sortiermethoden?

+1

Warum wäre das eine gute Lösung? –

0

Sie könnten schnell wählen verwenden, und dann den Wert auf dem äußersten Ende wählen:

Quick Select

Verwandte Themen