Commit graph

20 commits

Author SHA1 Message Date
Pagwin
f73c68a980
committing before I redo red-black deletion of black leaf 2024-11-22 21:54:36 -05:00
Pagwin
a0ce38e2ee
bug fixing and realizing that I need to fix my way of determining the next and prior node 2024-11-22 19:24:06 -05:00
Pagwin
88194b9a5b fixed a bug due to using pointers instead of vector indices 2024-11-22 17:50:16 -05:00
Pagwin
f87ca7431d
fixed some bugs 2024-11-22 15:43:10 -05:00
Pagwin
b5b03e5fbe
compiles now I think and seems to work but haven't tested extensively 2024-11-22 14:57:43 -05:00
Pagwin
22bfd729e4
remove revalidation std::list makes it redundant, also realized I can't have a reference in something I default construct 2024-11-22 01:43:37 -05:00
Pagwin
1bfe6e806a
typo fix and trying list instead of vector 2024-11-22 01:37:39 -05:00
Pagwin
61a710f938
have self iterator for easier erasure and revalidate them all after erasure but realizing that that isn't good enough for performance so might need to shift to using unique_ptr to do proper pointers 2024-11-21 19:04:54 -05:00
Pagwin
f83d3f70b5
operator< again 2024-11-21 18:50:52 -05:00
Pagwin
3736ad2384
erase draft implemented 2024-11-21 18:49:40 -05:00
Pagwin
2f323d8561
replaced array based binary tree for pointer based binary tree and got a draft of insertion done and a good chunk of a draft for removal done 2024-11-21 16:28:49 -05:00
Pagwin
c47ee41caf
slowly realizing that the array based binary tree is impractical 2024-11-20 18:15:34 -05:00
Pagwin
894021ab61
Redid iterator bookkeeping
Everything works via a bookkeeping type which tracks a bunch of stuff
like the color and neighbors. This is needed to make the iterator go
brrrr instead of needing to relocate the relevant tree node every time
we want to increment the iterator.
2024-11-19 22:36:09 -05:00
Pagwin
be847faa8c
just about got an idea for iterator but just realized that I need to implement a red-black tree rather than a generic binary tree 2024-11-19 14:09:05 -05:00
Pagwin
8a73e0d950
change iterator structure to actually do an in order iterate 2024-11-19 13:01:22 -05:00
Pagwin
a12ee91033
size < and at implemented, iterator still scaring me 2024-11-18 18:23:13 -05:00
Pagwin
c81eaa40cc
a lot of code but not sure about state iterator needs for in order traversal 2024-11-18 17:51:11 -05:00
Pagwin
ee7aad38f0
find and iterator stuff done kinda 2024-11-18 17:24:59 -05:00
Pagwin
e3ba3ec09f
made iterators have actually correct underlying data? 2024-11-18 17:08:25 -05:00
Pagwin
c4b0c7f5c9
Some initial boilerplate and obvious implementations
commit 1/10
2024-11-15 18:34:14 -05:00