forked from enlightenment/efl
Sparse Matrix was implemented and tested by Rafael Antognolli and myself in order to implement optimized large sparse matrix walk in some products, one of them WebKit-EFL optimizations. We have done extensive tests, with good code coverage. Similar to lists/inlists, we keep pointer to last known element and similar to iterators we keep reference to last accessed row and cell inside rows. This allows fast sequential access (for i... for j... m[i,j]), that is our most common usage case. Rows are kept in a list, with cells inside that row as another list. It's not similar to most book implementations where cells keep reference to their sibling cells in other rows as well, we opted to not do that to save some pointers and make algorithms simpler, still do great for our use case. This code was developed on behalf of our client, that wants to remain unnamed so far. Thanks client ;-) SVN revision: 42243 |
||
---|---|---|
legacy |