排序数列,并获取指定百分比位置的数值
这个类没有限制的数列的最大大小,需要注意不时的Erase,防止数列爆了
template< typename T>
class PercentileFilter {
// percentile: GetPercentileValue函数返回这个位置的值
**PercentileFilter(float percentile);**
//插入一个数, 插入后会进行排序
**void Insert(const T&);**
//移除一个数,
**bool Erase(const T&);**
//获取指定的百分比位置的数值
**T GetPercentileValue() const;**
}
例如:
PercentileFilter filter(0.5f);
filter.Insert(1u);
filter.Insert(2u);
filter.Insert(0u);
//这个返回0.5位置的值1u
filter.GetPercentileValue();