袖挽惊芒 2021-05-22 10:56 采纳率: 100%
浏览 19
已采纳

线性表链式结构能按序号删除吗

如果能的话

用函数List Delete(List L,int P);应该怎么编写程序

想了好久了但是还是没改出来

  • 写回答

4条回答 默认 最新

  • CSDN专家-sinJack 2021-05-22 10:59
    关注
    int Delete(LinkList L,int i,ElemType *e)
    /*在带头结点的单链表L中删除第i个元素,并将删除的元素保存到变量*e中*/
    {
    Node * pre,* r;
    int k;
    pre=L;
    k=0;
    while(pre->next!=NULL&&k<i-1)
    {
      pre=pre->next;
      k=k+1;
    }
    if(pre->next==NULL)
    {
      printf("删除结点的位置i不合理!");
      return ERROR;
    }
    r=pre->next;
    pre->next=r->next;
    *e=r->data;
    free(r);
    return 1;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?