private boolean updateMeanAndAssignment(List<ModifiableDBIDs> clusters,double[][] means,int minIndex,V fv,DBIDIter iditer,WritableIntegerDataStore assignment){
  int cur=assignment.intValue(iditer);
  if (cur == minIndex) {
    return false;
  }
  final ModifiableDBIDs curclus=clusters.get(minIndex);
  curclus.add(iditer);
  incrementalUpdateMean(means[minIndex],fv,curclus.size(),+1);
  if (cur >= 0) {
    ModifiableDBIDs ci=clusters.get(cur);
    ci.remove(iditer);
    incrementalUpdateMean(means[cur],fv,ci.size() + 1,-1);
  }
  assignment.putInt(iditer,minIndex);
  return true;
}

private boolean updateMeanAndAssignment ( List < ModifiableDBIDs > clusters , double [ ] [ ] means , int minIndex , V fv , DBIDIter iditer , WritableIntegerDataStore assignment ) { int cur = assignment . intValue ( iditer ) ; if ( cur == minIndex ) { return false ; } final ModifiableDBIDs curclus = clusters . get ( minIndex ) ; curclus . add ( iditer ) ; incrementalUpdateMean ( means [ minIndex ] , fv , curclus . size ( ) , + 1 ) ; if ( cur >= 0 ) { ModifiableDBIDs ci = clusters . get ( cur ) ; ci . remove ( iditer ) ; incrementalUpdateMean ( means [ cur ] , fv , ci . size ( ) + 1 , - 1 ) ; } assignment . putInt ( iditer , minIndex ) ; return true ; }
try to update the cluster assignment .
