(New page: John Ribeiro - Lu 8:30 - 9:20 - Lesson 22 Node * List_serach ( NOde * led, int v ) { while ( ( led != NULL ) && ( ( led->value ) != v ) ) { led = led -> next; } return led; } ...)
 
Line 36: Line 36:
 
   }
 
   }
 
   p->next = n;
 
   p->next = n;
 +
  return head;
 +
}
 +
 +
Node * List_delete ( Node * head, int v )
 +
{
 +
  if ( head == NULL )
 +
  {
 +
    return NULL;
 +
  }
 +
 +
  Node * p = head;
 +
 +
  while ( ( q != NULL ) && ( ( q->value) != v ) )
 +
  {
 +
    p = q;
 +
    q = q->next;
 +
  }
 +
 +
  if ( q != NULL )
 +
  {
 +
    p->next = q->next;
 +
    free ( q );
 +
  }
 +
 
   return head;
 
   return head;
 
}
 
}

Revision as of 04:34, 3 April 2012

John Ribeiro - Lu 8:30 - 9:20 - Lesson 22

Node * List_serach ( NOde * led, int v ) {

 while ( ( led != NULL ) && ( ( led->value ) != v ) )
 {
   led = led -> next;
 }
 return led;

}

/* Remember to check if the pointer is equal to NULL. This makes sure that the list exists in the first place. */

Node * List_InsertFront ( Node * head, int v ) {

 Node * n = Node_construct(v);
 n->next = head;
 return n;

}

Node * List_insertEnd ( Node * head, int v ) {

 Node * n = Node_construct(v);
 if ( head == NULL )
 {
   return n;
 }

/* If the list is empty create only one node */

 Node * p = head;
 while ( ( p->next) != NULL )
 {
   p = p -> next;
 }
 p->next = n;
 return head;

}

Node * List_delete ( Node * head, int v ) {

 if ( head == NULL )
 {
   return NULL;
 }
 Node * p = head;
 while ( ( q != NULL ) && ( ( q->value) != v ) )
 {
   p = q;
   q = q->next;
 }
 if ( q != NULL )
 {
   p->next = q->next;
   free ( q );
 }
 return head;

}

Alumni Liaison

Correspondence Chess Grandmaster and Purdue Alumni

Prof. Dan Fleetwood