首页 > 代码库 > findmax的实现

findmax的实现

 1 #include <vector> 2 #include <iostream> 3 #include "printCollection.h" 4  5 using namespace std; 6  7 /** 8  * Return the maximum item in array a. 9  *Assume a.size()>0;10  *Comparable object must provide operator< and operator=11  */12 template<class comparable>13 const comparable& findMax(const vector<comparable> &rhs)14 {15     int maxIndex = 0;16 17     for(int i = 0; i < rhs.size(); i++)18         if(rhs[maxIndex] < rhs[i] )19             maxIndex = i;20 21     return rhs[maxIndex];22 }23 24 int main() 25 {26     int ia[7] = {1, 2, 23, 13, 44, 12, 231};27     string sa[] = {"ab", "b", "c"};28 29     vector<int> iva(ia, ia+sizeof(ia)/sizeof(ia[0]));30     vector<string> sva(sa, sa+sizeof(sa)/sizeof(sa[0]));31 32     cout << findMax(iva) << endl;33     cout << findMax(sva) << endl;34 }