After several hours of frustration, I finally realized that the definition of two-three trees aren't standard (my lecture notes, this video, this other video, and Wikipedia) are different. My lecture notes, for example, maintains that keys are stored only in the leaves, while most other implementations store values in the inner nodes as well. The core idea (that max height is still $\log n$) is the same, though. What irritates me even further is that the Wikipedia article doesn't even have a deletion algorithm!
Question: What is the 'most usually used' definition of two-three trees? Pointing to a lecture note is fine, as long as its 'commonly taught'.
Edit: The difference between the two videos:
- In the second one, we do require that a single node with two child nodes hold only 1 value.
- In the first one, we do.
In the second one, we do require that … In the first one, we do.
must be escaping me. $\endgroup$