链表的删除插入笔记

来源:互联网 发布:java数据库开发实例 编辑:程序博客网 时间:2024/06/06 18:08


//查询一个链表的节点值
void GetElem_L(LinkList L,int i,ElemType &e){
      LinkList p=L->next;
      int j=1;
      while(p!=NULL&&j<i){
          p=p->next;
          j++;
      }
      if(p==NULL||j>i)
      return 0;
      e=p->data;
       return 1;
}
 
 
 //增加一个链表的节点
void Insert_L(LinkList L,int i,ElemType &e){
       LinkList p=L;
       while(p!=NULL&&j<i-1)
       {
           p=p->next;
           j++;
       }
       if(j>i-1||p==NULL)
          return 0;
       LinkList *q=(LinkList*)malloc(sizeof(LinkList));
       q->data=e;
       q->next=p->next;
       p->next=q;
       return 1;
}
 
 //删除链表的一个节点
void DelElem_L(LinkList L,int i,ElemType &e){
       LinkList p=L;
       j=0;
       while(p!=NULL&&j<i-1){
          p=p->next;
          j++;
       }
       if(p->next==NULL&&j>i-1)
         return 0;
        LinkList q=p->next;
        p->next=q->next;
        e=q->data;
        free(q);
        return 1;
}
0 0
原创粉丝点击