www.pudn.com > datamining.rar > C.java
//package cn.edu.tsinghua.ss.liuhongxin;
import java.util.ArrayList;
/**
* 频繁k-项候选集
*/
public class C {
/**
* 项的组
*/
private Item[] items;
/**
* 阶数k
*/
private int k;
public C(Item[] items, int k) {
this.items = items;
this.k = k;
}
public Item[] getItems() {
return items;
}
public int getK() {
return k;
}
/**
* 得到c对应的同阶L,即去处c中小于最小支持度阈值的项所剩余的,即为对应阶的频繁k-项集
*/
public L getL(double minimumSupport) {
ArrayList itemArrayList = new ArrayList();
for (int i = 0; i < items.length; i++) {
if (items[i].getSupport() > minimumSupport) {
itemArrayList.add(items[i].clone());
}
}
if (itemArrayList.size() == 0) {
return new L(null, k);
}
Item[] itemArray = new Item[itemArrayList.size()];
for (int i = 0; i < itemArrayList.size(); i++) {
itemArray[i] = (Item) itemArrayList.get(i);
}
return new L(itemArray, k);
}
public boolean isEmpty() {
if (items == null || items.length == 0) {
return true;
} else {
return false;
}
}
}