You can build a circular linked-list with this, provided you make "head" a pair of pointers and adjust your thinking appropriately.

The advantages are real, and not just space efficiency. You can traverse fwd and bck with identical code, potentially saving code space as well as data space. Although some other logic is more complicated, you might not need those other functions.

Don't forget, many embedded processors have moderate ROM and incredibly restricted RAM. Saving RAM at the expense of ROM can be a sensible trade-off.