1. TODO

    Top Current: ELF Immediate: Writing an ELF manually Stack For I have so little time.

  2. Adhoc problems

    Count of BSTs catalan numbers but think of the derivation. I can do 1 way for 0 and 1 nodes.

  3. Iterator in BST

    The core idea is simple, you have a pushLeft, on ctor you pushLeft(root) then the next is always the stack top.

  4. Median in a BST

    The idea that root is the middle element gets you a “balanced” bst.

  5. Inorder invariant

    Inorder traversal ( left → root → right ) is strictly increasing, that much is obvious.

  6. Brute force that tripped me

    this was a simple problem in the sense that they were looking for a specific optim that was easy to guess than prove that it was needed.

  7. Traversals

    A short note on different BST traversals and if they can be reversed.

  8. Partition Invariant

    Everything in the left subtree is smaller than node. Everything in the right subtree is greater than node.

  9. Range invariant

    The invariant is that each node will represent a range of valid values. For a binary tree, one end is unbounded. As you go down you partition ranges.

  10. Foundational implementations

    Common snippets of code that I should remember and do them exactly this way each time to build memory.