slnkdeli.c

来自「《数据结构》教材源程序,可以让你轻松的根据教材学习数据结构」· C语言 代码 · 共 32 行

C
32
字号
 /*****************************************************/
 /*             在单链表中删除第i个结点               */
 /*   文件名dlnkdeli.c,函数名delete_pos_link_list()  */
 /*****************************************************/
 node *delete_pos_link_list(node *head,int i)
 {
   node *pre=NULL,*q;
   if(!head) {printf("单链表是空的!");return head;}
   if(i==1)
     {
       q=head;
       head=head->next;
     }
   else
     {
       pre=find_pos_link_list(head,i-1);/*查找第i个结点的前驱结点*/
       if(pre&&pre->next)/*存在第i个结点*/
         {
           q=pre->next;
           pre->next=q->next;/*删除(1)*/
         }
       else/*不存在第i个结点*/
         {
           printf("单链表中没有第%d个结点!无法删除!",i);
           return head;
         }
     }
   free(q);
   return head;
 }

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?