[prev] 62 [next]

Modifying a Linked List (cont)

Delete a specific element (recursive version):

NodeT *deleteLL(NodeT *list, int d) {
   if (list == NULL) {           // element not in list
      return list;

   } else if (list->data == d) {
      return deleteHead(list);   // delete first element 

   } else {                // delete element in tail list
      list->next = deleteLL(list->next, d);
      return list;
   }
}