I have more books than shelf space. I assume that some of my readers can say the same.
In my previous apartment, where space was even scarcer, I had one shelf beside my desk for the reference books that I use most often. After consulting such a book, I put it at the end of that shelf nearest my hand (I’ll call that end the head). How might I extend that principle to many shelves, without shifting all the books every time?
Initially all the books are in boxes (with a catalog telling me which box each is in). When I take a book from a box, it goes to the head of the first non-full shelf. If all shelves are full, it goes on the last shelf, and the last book on that shelf goes to a box.
When I take a book from a shelf, I return it to the head of the previous shelf (if any) and, if necessary, move a book from the tail of that shelf to the head of the next shelf.
Can you improve this scheme?
Another move, and now I have shelf space to spare; but more than half of it is a staircase away from this desk, and can be considered “boxes” for the scope of this problem.
— Space to spare, I say, but not enough to be useful as swap-space for a project of rearranging the books according to my own taxonomy of subject matter. They’re now arranged by Library of Congress code, with some weird results.