一、构造分类器
/**
* 训练集分类(以每一行最后一个元素作为键,相同的键对应的行存入到同一链表中)
*
* @param input
* 训练元祖
* @return 分类器
*/
public HashMap<Double, ArrayList<ArrayList<Double>>> practiceClassifyer(
ArrayList<ArrayList<Double>> input) {
HashMap<Double, ArrayList<ArrayList<Double>>> classifyer = new HashMap<Double, ArrayList<ArrayList<Double>>>();
for (ArrayList<Double> arrayList : input) {
if (arrayList.isEmpty())
break;
// 以最后一个数字作为该类别的键
double key = arrayList.get(arrayList.size() - 1);
if (classifyer.containsKey(key)) {
ArrayList<ArrayList<Double>> temp = classifyer.get(key);
temp.add(arrayList);
} else {
ArrayList<ArrayList<Double>> temp = new ArrayList<ArrayList<Double>>();
temp.add(arrayList);
classifyer.put(key, temp);
}
}
return