//背包的典型用例
//简单的计算标准输入中的所有double值的平均值和样本标准差
//背包是一种不支持从中删除元素的集合数据类型——它的目的就是帮助收集元素并迭代遍历所有收集到的元素(用例也可以检查背包是否为空或者获取背包中元素的数量)
package Algorithms;
import edu.princeton.cs.algs4.Bag;
import edu.princeton.cs.algs4.StdIn;
import edu.princeton.cs.algs4.StdOut;
public class P77_Bag {
public static void main(String[] args) {
// TODO Auto-generated method stub
Bag<Double> numbers = new Bag<Double>();
while (!StdIn.isEmpty()){
numbers.add(StdIn.readDouble());
}
int N = numbers.size();
double sum = 0.0;
for (double x : numbers){
sum += x;
}
double mean = sum / N;
sum = 0.0;
for (double x : numbers){
sum += (x - mean) * (x - mean);
}
double std = Math.sqrt(sum / (N - 1));
StdOut.printf("Mean: %.2f\n", mean);
StdOut.printf("Std dev: %.2f\n", std);
}
}
Bag(背包)
最新推荐文章于 2020-12-29 22:12:42 发布