0
我有整数的ArrayList:[11,15,10,19,如图9所示,1,2,16] 和我似乎无法返回正确的答案。使用Java计算标准偏差?
我的代码:
static double Q2(ArrayList<Integer> input) {
Collections.sort(input);
ArrayList<Double> input2 = new ArrayList<>();
double sum = 0;
double sum2 = 0;
double sd = 0;
for (int i = 0; i < input.size(); i++) {
sum = sum + input.get(i);
}
double mean = sum/input.size();
for (int i = 0; i < input.size(); i++) {
input2.add((Math.pow((input.get(i) - mean), 2)));
}
for (int i = 0; i < input2.size(); i++) {
sum2 = sum2 + input2.get(i);
}
double mean2 = sum2/input2.size();
sd = Math.sqrt(mean2);
return sd;
预期输出应该是:5.998697775350913
我的输出是:6.010407640085654
谢谢您的时间,大加赞赏。
我用你的代码正确的输出。 http://ideone.com/XmTDb2 – jyotesh
我已经简化了你的代码:http://ideone.com/hWTBgi。结果是5.998697775350913 – Zefick
也许问题出在您的输入中,请检查您在此处发布的同一列表。 – sirandy