visual representation of the append operation is as followsdelete operation unlike the singly linked listwhere we needed to keep track of the previously encountered node anytime we traversed the whole length of the listthe doubly linked list avoids that whole step this is made possible by the use of the previous pointer the algorithm for removing nodes from doubly linked list caters for basically four scenarios before deletion of node is completed these arewhen the search item is not found at all when the search item is found at the very beginning of the list when the search item is found at the tail end of the list when the search item is found somewhere in the middle of the list the node to be removed is identified when its data instance variable matches the data that is passed to the method to be used in the search for the node if matching node is found and subsequently removedthe variable node_deleted is set to true any other outcome results in node_deleted being set to falsedef delete(selfdata)current self head node_deleted false