Both singly-linked and doubly-linked lists are folklore, having been
used in programs for over 40 years.  They are discussed, for example,
by Knuth [39, Sections 2.2.3-2.2.5].  Even the 
 data
structure seems to be a well-known data structures exercise.
Exercise  3..1   
Why is it not possible, in an 

 to use a dummy node to avoid
  all the special cases that occur in the operations 

, 

,
  

, and 

?
 
Exercise  3..2   
Describe and implement the 

 operations 

, 

,
  

 and 

 on an 

.  Each of these operations
  should run in 

 time.
 
opendatastructures.org