.hashout
の内容をrubyのHashオブジェクト
に変換し、そのオブジェクトを返す。 ハッシュキーはアイテム集合、対応する値は重み。 ただし、出力できるアイテム集合数には上限があり、 4,096,000アイテム集合を超えると、そこで強制的に出力を停止する。 途中で停止したかどうかは、partlyメソッドを使うことで確認できる。
> require 'zdd' > a=ZDD::itemset("a") > b=ZDD::itemset("b") > c=ZDD::itemset("c") > d=ZDD::itemset("d") > f=a*b + 2*b*c + 3*d + 4 > h=f.hashout > p h {"a b"=>1, "b c"=>2, "d"=>3, ""=>4}
partly : 部分Hash出力フラグ
to_a : アイテム集合配列への変換
csvout : CSVファイル出力
export : ZDDのシリアライズ出力