-
Notifications
You must be signed in to change notification settings - Fork 44
feat: implement hashing algorithms and some extra features #87
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
lee-naish
merged 158 commits into
algorithms-in-action:2024_sem2
from
tuankhainguy:2024_sem2
Jan 9, 2025
Merged
feat: implement hashing algorithms and some extra features #87
lee-naish
merged 158 commits into
algorithms-in-action:2024_sem2
from
tuankhainguy:2024_sem2
Jan 9, 2025
Conversation
This file contains hidden or 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
Hashing tab created, added explanation and more
basic parameters
controller, parameters and index files are updated
Hash controller
* insertion for linear probing is now working * hide large array overflow subarrays overflow will be hidden but can be seen by mouse drag now variable will be scrolled into view
* added array extractor a normal array can now be extracted from array tracer * implemented highlights added color higlights for pending, collision and insertion
double hashing chunker done
…leaned up some visuals so just shows what is necessary.
Hashing Search
… to variables and constants naming
feat: added set zoom for 2DArray and Graph
feat: remove isBulkInsert checks in hashInsert
feat: update tests
…entation-Requirements for DH and LP
Updated Instructions to include expanding. Also added URL-Code-Implem…
feat: implement chaining
feat: remove expand button for larger tables of LP and DH
hotfix: instructions for chaining
Contributor
Author
|
@Sraccity Ready for review |
fix: missing automated tests
…s-in-action.github.io into 2024_sem2
lee-naish
approved these changes
Jan 8, 2025
Contributor
lee-naish
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Praghash is otherwise engaged so I'm taking over merging etc (fingers crossed - I'm muddling through without necessarily knowing exactly what I'm doing:). Good work team!
Contributor
|
That went pretty smoothly. Thanks again! :) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
PR for hashing algorithms implementation and some extra features.
Deployment can be accessed at Vercel
Features
Hashing
start-endorstart-end-stepParamHelper.jsthat help in input filtering and processing, all documented in the codeExtra features
setSizesetSizefunction is in Tracer so it can be call by any visualisersetZoomsetZoomfunction is in Tracer so it can be call by any visualiserChanges
Array2D
There are changes made to the Array2DTracer and Array2DRenderer to allow for vertical splitting and visualising
settakes additional parameterhighlightRowto highlight a specific rowsettakes additional parameter splitArray that contains mandatory propertyrowLengthand optional propertyrowHeaderto split an arrayassignVariable,resetVariablefill,unfillupdateValueAt,getValueAtextractArrayOngoing
Chaining
PopperJslibrary to show the chain on hover, all the table insert, delete and search animation are implemented. However, the actions made in the chains are yet to be visualizedRecommendation
PopperJSto know moreextractArrayfunction in Array2DTracer can be used by any algorithms, but more Hashing-oriented, so minor modification before usage is recommendedsetZoomsmoother would be greatTesting Methodology
Checklist