本文整理汇总了Java中gnu.trove.set.hash.THashSet.size方法的典型用法代码示例。如果您正苦于以下问题:Java THashSet.size方法的具体用法?Java THashSet.size怎么用?Java THashSet.size使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类gnu.trove.set.hash.THashSet
的用法示例。
在下文中一共展示了THashSet.size方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: defaultIntersection
import gnu.trove.set.hash.THashSet; //导入方法依赖的package包/类
public static VarSet defaultIntersection (VarSet v1, VarSet v2)
{// Grossly inefficient implementation
THashSet hset = new THashSet (v1);
hset.retainAll (v2);
Variable[] ret = new Variable [hset.size ()];
int vai = 0;
for (int vi = 0; vi < v1.size(); vi++) {
Variable var = v1.get (vi);
if (hset.contains (var)) { ret[vai++] = var; }
}
return new HashVarSet (ret);
}
示例2: calc
import gnu.trove.set.hash.THashSet; //导入方法依赖的package包/类
public float calc(THashSet<Object> s1, THashSet<Object> s2) {
int com = 0;
if (s1 == null || s2 == null)
return 0;
TObjectHashIterator<Object> it = s1.iterator();
for ( int i = s1.size(); i-- > 0; ) {
Object v = it.next();
if(s2.contains(v))
com++;
}
float sim = ((float) com)/(s1.size()+s2.size()-com);
return sim;
}
示例3: setDictionary
import gnu.trove.set.hash.THashSet; //导入方法依赖的package包/类
/**
* 设置词典
* @param newset
*/
public void setDictionary(THashSet<String> newset) {
if(newset.size()==0)
return;
ArrayList<String> al = new ArrayList<String>();
MyCollection.TSet2List(newset, al);
Dictionary dict = new Dictionary();
dict.addSegDict(al);
setDictionary(dict);
}
示例4: nextSeeds
import gnu.trove.set.hash.THashSet; //导入方法依赖的package包/类
private Stack<Seed> nextSeeds(int currentRHSIndex) {
// System.out.println("Find holes");
THashSet<ColumnCollection> deps = new THashSet<>();
ArrayList<ColumnCollection> currentMaximalNonDependencies = maximalNonDependencies.getLHSForRHS(currentRHSIndex);
HashSet<ColumnCollection> currentMinimalDependencies = new HashSet<>(minimalDependencies.getLHSForRHS(currentRHSIndex));
ArrayList<ColumnCollection> newDeps = new ArrayList<>(numberOfColumns * deps.size());
// Holes holes = new Holes();
// int i = 0;
// for (ColumnCollection maximalNonDependency : currentMaximalNonDependencies) {
// ColumnCollection complement = maximalNonDependency.setCopy(currentRHSIndex).complement();
// if (deps.isEmpty()) {
// ColumnCollection emptyColumnIndices = new ColumnCollection(numberOfColumns);
// for (Integer complementColumnIndex : complement.getSetBits()) {
// deps.add(emptyColumnIndices.setCopy(complementColumnIndex));
// }
// } else {
// for (ColumnCollection dep : deps) {
// int[] setBits = complement.getSetBits();
// for (int setBit = 0; setBit < setBits.length; setBit++) {
// holes.add(dep.setCopy(setBits[setBit]));
//// System.out.println("Dep:\t" + dep.setCopy(setBits[setBit]));
// }
// }
// // minimize newDeps
// System.out.println(i++ + "\t" + currentMaximalNonDependencies.size());
// System.out.println("total deps:\t" + deps.size());
// System.out.println("before minimizing:\t" + holes.size());
//// ArrayList<ColumnCollection> minimizedNewDeps = minimizeSeeds(newDeps);
// holes.minimize();
// System.out.println("after minimizing:\t" + holes.size());
// deps.clear();
// deps.addAll(holes);
// holes.clear();
// }
// }
for (ColumnCollection maximalNonDependency : currentMaximalNonDependencies) {
ColumnCollection complement = maximalNonDependency.setCopy(currentRHSIndex).complement();
if (deps.isEmpty()) {
ColumnCollection emptyColumnIndices = new ColumnCollection(numberOfColumns);
for (Integer complementColumnIndex : complement.getSetBits()) {
deps.add(emptyColumnIndices.setCopy(complementColumnIndex));
}
} else {
for (ColumnCollection dep : deps) {
int[] setBits = complement.getSetBits();
for (int setBit = 0; setBit < setBits.length; setBit++) {
newDeps.add(dep.setCopy(setBits[setBit]));
}
}
// minimize newDeps
ArrayList<ColumnCollection> minimizedNewDeps = minimizeSeeds(newDeps);
deps.clear();
deps.addAll(minimizedNewDeps);
newDeps.clear();
}
}
// return only elements that aren't already covered by the minimal
// dependencies
Stack<Seed> remainingSeeds = new Stack<>();
deps.removeAll(currentMinimalDependencies);
for (ColumnCollection remainingSeed : deps) {
remainingSeeds.push(new Seed(remainingSeed));
}
return remainingSeeds;
}
示例5: update
import gnu.trove.set.hash.THashSet; //导入方法依赖的package包/类
int update(String[] toks) throws IOException {
if(toks==null)
return 0;
THashSet<String> newdict = new THashSet<String>();
String nowords = "";
int count = 0;
for(int i=0;i<toks.length;i++){//取得包含新词的最长子串
if(Chars.isLetterOrDigitOrPunc(toks[i]))
continue;
if(!dict.contains(toks[i])&&!tempdict.contains(toks[i])){
nowords += "" + toks[i];
count++;
}else{
if(nowords.length()>0){
System.out.println(nowords);
newdict.add(nowords.trim());
nowords = "";
}
}
}
TObjectHashIterator<String> it = newdict.iterator();
while(it.hasNext()){
String s = it.next();
if(nodict.contains(s))
continue;
System.out.println("搜索: "+s);
THashSet<String> sset = getNewWords(s);
if(sset==null||sset.size()==0)
continue;
System.out.println(sset);
tempdict.addAll(sset);
if(!sset.contains(s)&&!nodict.contains(s)){
nodict.add(s);
bwNo.write(s);
bwNo.write("\n");
}
}
bwNew.flush();
bwNo.flush();
return count;
}