Question: Suppose that a singly linked list is implemented with both a header and a tail node. Using the ideas discussed in Exercise, describe constant-time algorithms to
a. Insert item x before position p.
b. Remove the item stored at position p.
Exercise: Suppose that you have a reference to a node in a singly linked list that is guaranteed not to be the last node in the list. You do not have references to any other nodes (except by following links). Describe an O(1) algorithm that logically removes the value stored in such a node from the linked list, maintaining the integrity of the linked list.