 In a doubly linked list, one can insert or delete a node in a constant number of operations given only that node's address.To do the same in a singly linked list, one must have the "address of the pointer" to that node, which is either the handle for the whole list (in case of the first node) or the link field in the "previous" node.Some algorithms require access in both directions.