Ignore:
Timestamp:
Nov 7, 2011, 10:47:08 AM (13 years ago)
Author:
torrento
Message:

Comment sleep in while loop

File:
1 edited

Legend:

Unmodified
Added
Removed
  • BAORadio/AmasNancay/trunk/mergeAnaFiles.cc

    r591 r595  
    9090      "The median of an empty list is undefined.";
    9191  }
    92   };
    93   template<class RandAccessIter>
    94     double median(RandAccessIter begin, RandAccessIter end)
    95     throw(median_of_empty_list_exception){
    96     if(begin == end){ throw median_of_empty_list_exception(); }
    97     std::size_t size = end - begin;
    98     std::size_t middleIdx = size/2;
    99     RandAccessIter target = begin + middleIdx;
    100     std::nth_element(begin, target, end);
    101    
    102     if(size % 2 != 0){ //Odd number of elements
    103       return *target;
    104     }else{            //Even number of elements
    105       double a = *target;
    106       RandAccessIter targetNeighbor= target-1;
    107       std::nth_element(begin, targetNeighbor, end);
    108       return (a+*targetNeighbor)/2.0;
    109     }
    110   }
     92};
     93template<class RandAccessIter>
     94double median(RandAccessIter begin, RandAccessIter end)
     95  throw(median_of_empty_list_exception){
     96  if(begin == end){ throw median_of_empty_list_exception(); }
     97  std::size_t size = end - begin;
     98  std::size_t middleIdx = size/2;
     99  RandAccessIter target = begin + middleIdx;
     100  std::nth_element(begin, target, end);
     101   
     102  if(size % 2 != 0){ //Odd number of elements
     103    return *target;
     104  }else{            //Even number of elements
     105    double a = *target;
     106    RandAccessIter targetNeighbor= target-1;
     107    std::nth_element(begin, targetNeighbor, end);
     108    return (a+*targetNeighbor)/2.0;
     109  }
     110}
    111111
    112112//-------------
Note: See TracChangeset for help on using the changeset viewer.