So algebra notes might be on pages 2-10, 20-23,43-47; shopping lists on 11 and 19; Christmas ideas on 17-18. You can of course leave blank pages after a shopping list for the next one, but with an updated index and page numbers you can easily find the next shopping list page (you can also write "continued on page ..." at the bottom).
Another very different system would be to use binders (or digital notebooks) where you can easily add pages. However, then page numbers become tricky and you lose the chronological information of what was written in which order.
Back when we were programming in BASIC, the 'solution' to the equivalent problem (line numbering) was to start by incrementing in tens rather than ones.
I've actually found it quite interesting to think about it all in very software-engineery ways. Indices contain pointers to linked lists of pages, pages are allocated and never freed, and the linked lists are append only. Thinking about it this way makes certain issues obvious. For example, it is a pain for me to keep looking up common items in the index, so I have a small 'floating index' on an index card that lives with my current week's calendar/action items to save time on common lookups (sort of a cache). Similarly, lists that are appended to less frequently than others become highly fragmented, and it can be slow to search for things in those lists, so there is some kind of limit/balance in there regarding the usefulness of these structures depending on the rate that lists are appended to.