diff options
author | Patrick Simianer <simianer@cl.uni-heidelberg.de> | 2011-11-11 12:42:24 +0100 |
---|---|---|
committer | Patrick Simianer <simianer@cl.uni-heidelberg.de> | 2011-11-11 12:42:24 +0100 |
commit | a6f3fb188e539eb1eb4d9e0be9fffdf15bdf9170 (patch) | |
tree | 6b49f7f8b07dee60324645c667e65698805a55c0 /utils/fast_sparse_vector.h | |
parent | 606750f2487ed294dcdadcd99638eb5de80d1a0c (diff) |
more reporting, size_nonz() for fast sparse vector
Diffstat (limited to 'utils/fast_sparse_vector.h')
-rw-r--r-- | utils/fast_sparse_vector.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/utils/fast_sparse_vector.h b/utils/fast_sparse_vector.h index 8daaac85..8fe6cb3d 100644 --- a/utils/fast_sparse_vector.h +++ b/utils/fast_sparse_vector.h @@ -190,6 +190,14 @@ class FastSparseVector { else return local_size_; } + size_t size_nonzero() const { + size_t sz = 0; + const_iterator it = this->begin(); + for (; it != this->end(); ++it) { + if (nonzero(it->first)) sz++; + } + return sz; + } inline void clear() { if (is_remote_) delete data_.rbmap; is_remote_ = false; |