private void findLargeItemSets() throws Exception {
  ArrayList<Object> kMinusOneSets, kSets;
  Hashtable<ItemSet,Integer> hashtable;
  int necSupport, i=0;
  necSupport=(int)(m_minSupport * m_instances.numInstances() + 0.5);
  kSets=AprioriItemSet.singletons(m_instances,m_treatZeroAsMissing);
  if (m_treatZeroAsMissing) {
    AprioriItemSet.upDateCountersTreatZeroAsMissing(kSets,m_instances);
  }
 else {
    AprioriItemSet.upDateCounters(kSets,m_instances);
  }
  kSets=AprioriItemSet.deleteItemSets(kSets,necSupport,m_instances.numInstances());
  if (kSets.size() == 0) {
    return;
  }
  do {
    m_Ls.add(kSets);
    kMinusOneSets=kSets;
    kSets=AprioriItemSet.mergeAllItemSets(kMinusOneSets,i,m_instances.numInstances());
    hashtable=AprioriItemSet.getHashtable(kMinusOneSets,kMinusOneSets.size());
    m_hashtables.add(hashtable);
    kSets=AprioriItemSet.pruneItemSets(kSets,hashtable);
    if (m_treatZeroAsMissing) {
      AprioriItemSet.upDateCountersTreatZeroAsMissing(kSets,m_instances);
    }
 else {
      AprioriItemSet.upDateCounters(kSets,m_instances);
    }
    kSets=AprioriItemSet.deleteItemSets(kSets,necSupport,m_instances.numInstances());
    i++;
  }
 while (kSets.size() > 0);
}

private void findLargeItemSets ( ) throws Exception { ArrayList < Object > kMinusOneSets , kSets ; Hashtable < ItemSet , Integer > hashtable ; int necSupport , i = 0 ; necSupport = ( int ) ( m_minSupport * m_instances . numInstances ( ) + 0.5 ) ; kSets = AprioriItemSet . singletons ( m_instances , m_treatZeroAsMissing ) ; if ( m_treatZeroAsMissing ) { AprioriItemSet . upDateCountersTreatZeroAsMissing ( kSets , m_instances ) ; } else { AprioriItemSet . upDateCounters ( kSets , m_instances ) ; } kSets = AprioriItemSet . deleteItemSets ( kSets , necSupport , m_instances . numInstances ( ) ) ; if ( kSets . size ( ) == 0 ) { return ; } do { m_Ls . add ( kSets ) ; kMinusOneSets = kSets ; kSets = AprioriItemSet . mergeAllItemSets ( kMinusOneSets , i , m_instances . numInstances ( ) ) ; hashtable = AprioriItemSet . getHashtable ( kMinusOneSets , kMinusOneSets . size ( ) ) ; m_hashtables . add ( hashtable ) ; kSets = AprioriItemSet . pruneItemSets ( kSets , hashtable ) ; if ( m_treatZeroAsMissing ) { AprioriItemSet . upDateCountersTreatZeroAsMissing ( kSets , m_instances ) ; } else { AprioriItemSet . upDateCounters ( kSets , m_instances ) ; } kSets = AprioriItemSet . deleteItemSets ( kSets , necSupport , m_instances . numInstances ( ) ) ; i ++ ; } while ( kSets . size ( ) > 0 ) ; }
method that finds all large itemsets for the given set of instances .
