our external reference to the list and in turnwe lose the list itself the resultsafter linking the new node into the listare shown in figure (cwhen modifying or changing links in linked listwe must consider the case when the list is empty for our implementationthe code works perfectly since the head reference will be null when the list is empty and the first node inserted needs the next field set to none removing nodes an item can be removed from linked list by removing or unlinking the node containing that item consider the linked list from figure (cand assume we want to remove the node containing firstwe must find the node containing the target value and position an external reference variable pointing to itas illustrated in figure (aafter finding the nodeit has to be unlinked from the listwhich entails adjusting the link field of the node' predecessor to point to its successor as shown in figure (bthe node' link field is also cleared by setting it to none head curnode (ahead curnode ( figure deleting node from linked list(afinding the node to be removed and assigning an external reference variable and (bthe link modifications required to unlink and remove node accessing the node' successor is very simple using the next link of the node but we must also access the node' predecessor in order to change its link the only way we can do this is to position another external reference simultaneously during the search for the given nodeas illustrated in figure (athe result after removing the node containing value is shown in figure (bremoving the first node from the list is special case since the head pointer references this node there is no predecessor that has to be relinkedbut the head reference must be adjusted to point to the next nodeas illustrated in figure