	list delete( pq )
	list pq;

	{struct rec r;
	list p, max;
	if (pq==NULL)	Error /*** Deleting from empty PQ ***/;
	else	{r.next = pq;
		max = &r;
		for (p=pq; p->next != NULL; p=p->next)
			if (max->next->k < p->next->k) max = p;
		max->next = max->next->next;
		return( r.next );
		}
	};
