Use a unified way of handling building the prefix-tree aswell as lookup #12
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.
This commit makes it so we always are operating on binary strings which makes it much easier to have the same behaviour in lookup and insert.
Things left to do:
Profiling of insert
Inserting 10 000 random paths with segment length=20 and number of segments=20 (/segment/segment/segment/...) results in the following runtime:
Old solution: ~1.6secs
New solution: ~3secs
This means that the new solution is a bit slower when it comes to inserting new routes. But since this is something that will only happen once or so I think that the upsides with this PR (Unified handling of insert/lookup) outweighs the slowdown.