我的问题是如何从
例如,如果向量
是否有有效的方法来解决这个问题?
敬礼
vec.begin()
到vec.end()
中选择n个元素,以便我们几乎覆盖了所有的向量元素?vector<double> take_100_samples(vector<double>& in)
{
vector<double> vec(100);
double step = (in.size() - 1) / (100 - 1);
// sampling process
return vec;
}
例如,如果向量
in
的大小为 200,则我们选择其中每两个元素(即in[0]
、in[2]
、in[4]
,...,in[199]
),但如果大小不能被 100 整除怎么办?是否有有效的方法来解决这个问题?
敬礼
std::sample
不够充分,因为它不能保证结果的均匀性。也就是说,在200个元素中,不能保证每隔一个元素就会被选中! - user1810087