我正在使用 gnu 科学库 (GSL)。假设我有gsl_vector
这样的:7 0 -6 5 8 0 10 -2
这是一个包含正数、负数和零作为元素的向量。
我想计算 this 中非零元素或零元素的数量gsl_vector
。我知道有一个调用count_if
C++ Vector 的函数。但是我通过gsl_vector.h
and搜索gsl_blas.h
,没有与之相等的功能。我可以通过评估它们来了解所有元素gsl_vector_get()
,然后问 if 问题。
int counter = 0;
for(int i = 0;i<length_of_the_gsl_vector;++i){
if(fabs(gsl_vector_get(y,i))<0.5) ++counter;
}
return counter;
但是我一直想知道 GSL 中是否已经有这样一个效率更高的功能。
或者也许有一个count_if
功能gsl_array
?