Вот так быстрее считать дисперсию. Ёщё можно погуглить по запросу "Integral Image":
double m1 = 0.0, m2 = 0.0;
numType x;
for (i = 0; i < N; i++) {
x = randNum();
m1 += x;
m2 += x*x;
}
m1 /= N;
m2 /= N;
printf(" Average: %f\n", m1);
printf("Std. deviation: %f\n", sqrt(m2-m1*m1));