Name: Master challengist 2010-03-08 2:42
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
You must be able to produce simple clean linked list implementations quickly.
* Implement Insert and Delete for
o singly-linked linked list
o sorted linked list
o circular linked list
int Insert(node** head, int data)
int Delete(node** head, int deleteMe)
* Split a linked list given a pivot value
void Split(node* head, int pivot, node** lt, node** gt)
* Find if a linked list has a cycle in it. Now do it without marking nodes.
* Find the middle of a linked list. Now do it while only going through the list once. (same solution as finding cycles)