I've always been taught that the more pointers you need in a piece of code, the less elegant it is. Also, I know that the only data structure that you 'need' is a singly linked tree. As a result, I've always tried my best to avoid such atrocities as doubly linked lists and doubly linked trees.
Is this true? Is code really inelegant if you use pointers and doubly linked structures where fewer pointers or a singly linked structure is sufficient?
EDIT: Turns out there IS a clever way to avoid the doubly linked tree, by the way.