small improvement

This commit is contained in:
Tiago Gomes 2012-05-25 21:26:40 +01:00
parent 4b2ffee015
commit c1bd230e61
1 changed files with 4 additions and 4 deletions

View File

@ -158,17 +158,17 @@ class TFactor
size_t idx = indexOf (arg); size_t idx = indexOf (arg);
assert (idx != args_.size()); assert (idx != args_.size());
assert (evidence < ranges_[idx]); assert (evidence < ranges_[idx]);
Params copy = params_; Params newps;
params_.clear(); newps.reserve (params_.size() / ranges_[idx]);
params_.reserve (copy.size() / ranges_[idx]);
Indexer indexer (ranges_); Indexer indexer (ranges_);
for (unsigned i = 0; i < evidence; i++) { for (unsigned i = 0; i < evidence; i++) {
indexer.incrementDimension (idx); indexer.incrementDimension (idx);
} }
while (indexer.valid()) { while (indexer.valid()) {
params_.push_back (copy[indexer]); newps.push_back (params_[indexer]);
indexer.incrementExceptDimension (idx); indexer.incrementExceptDimension (idx);
} }
params_ = newps;
args_.erase (args_.begin() + idx); args_.erase (args_.begin() + idx);
ranges_.erase (ranges_.begin() + idx); ranges_.erase (ranges_.begin() + idx);
} }