2.实现双向链表的任意位置删除
int DeleteByPos(linklist *h,int pos)
{
linklist *tmp;
if((tmp=(linklist*)malloc(sizeof(linklist)))==NULL){
printf("malloc 失败");
return -1;
}
while(pos!=0){
h=h->rear;
pos--;
}
tmp=h->rear;
if(tmp->rear!=NULL){
tmp->rear->front=h;
}
h->rear=tmp->rear;
free(tmp);
tmp=NULL;
return 0;
}