Order of storage of pointers for a linked list of length n
Let $T(n)$ be the number of middle-of-list pointers you need to store for a list of length&nbsp;$n$.  For a list of length&nbsp;$n$, you need to store one pointer to the middle, plus however many middle-of-list pointers you need for the first half, plus however many you need for the second half.  This gives
$$T(n) = 1 + 2T(n/2)\,,$$
and we can take $T(1) = 0$, since a list of length&nbsp;$1$ probably doesn't need a middle-of-list pointer.

We have a reference question on formally solving recurrences like this but, for a rough-and-ready approach, we see that $T(2)=1$, $T(4)=3$, $T(8)=7$ so it's pretty clear that $T(n)=O(n)$ and, more to the point, $T(n)$ is about equal to&nbsp;$n$.

Well, now we wonder if a linked list was really the right data structure to be using.  First off, programming a linked list with middle-of-list pointers seems to be quite difficult.  Appending an item to the list sounds like it'll be awkward because you have all those pointers to update. Actually, I'm not sure what the data structure would even look like. But, anyway, maintaining the middle-of-list pointers costs us time so we'd better hope get something back for our investment of time, such as a saving in space.  Nope. Storing the linked list needs about $n$&nbsp;"next" pointers and about $n$&nbsp;middle of list pointers, for a total of about&nbsp;$2n$. But just storing your data in a binary tree would require $n$&nbsp;nodes, each with a pointer to the left child and one to the right child, again giving a total of $2n$&nbsp;pointers.