-
Notifications
You must be signed in to change notification settings - Fork 478
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[MINOR] Update cocode algorithms for CLA
This commit adds a new memorizer that rely on an array in the size of number of columns to compress, instead of a hashmap with all. The memory footprint is the same, but the performance is very much improved because it allows constant time deletion of all memorized column groups that contains a combination with the given specific columns. The technique first allocate an array in size number of columns each index get its own hashmap. containing the columngroup associated with it. then when combining columnsgroups, the lowest index of all columns combined determine which array index hash map to add the combined index into. Once a combination is chosen, the buckets of the lowest index of each column group combined is reset, and the combined columngroup is inserted. The result is constant time O(1) deletion and insertion in the memorizer
- Loading branch information
1 parent
3449285
commit 48de384
Showing
10 changed files
with
277 additions
and
89 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.