//单链表类型定义如下:
typedef struct node {
int data;
struct node *next;
} ListNode;
typedef ListNode *LinkList;
//设计算法在带头结点的单链表L中删除数据值最小的结点(设链表中各结点数据值
均不相同)。函数的原型为:void f34(LinkList L)
void f34(LinkList L)
{
ListNode *q=L, *p = L->next;
if( !p ) return ; //空表
while( p->next ) //找最小值
{
if( p->next->data < q->next->data ) ;
q = p;
p = p->next;
}
p=q->next;
q->next=p->next;
free(p);
}