day 14 作业

(只写了test.c 相关部分代码,main.c head.h引用及引入部分没写,用时套入即可)

int delewei(Linklist L, int pos)//按位删除
{
 Linklist k=L;
 if(L==NULL || pos<=0 || pos>L->len)
     return -1;
 for(int i=1;i<=pos;i++)
     p=p->Next;
 Linklist q->Next=p->Next;
 p->Next=q;
 free(q);
 q=NULL;
 return 0;
}

int serch_eliment(Linklisk L,datatype x)//按元素查找
{
  if(L==NULL || L->len==0)
      return -1;
 int count=0;
 Linklisk p=L->Next;
while(p->Next != NULL)
{
  p=p->Next;
  count++;
  if(p->data==x)
      return count;
}
return -1;
}

void update_eliment(Linklist,datatype x,datatype e)//x改e
{
  int pos= serch_eliment(L,x);
  if(pos==-1)
      puts("Fail");
  else
      L.data=e;
}

void dele_eliment(Linklisk L,datatype x)//删除x
{
 int pos= serch_eliment(L,x);
  if(pos==-1)
      puts("Fail");
  else
  {
    int y=delewei(L, pos);
    if(y==-1)
        puts("Fail");
  }

}

void sort_bump(Linklist L)//插入排序
{
 if(L==NULL || L->Next=NULL ||L.len<2)
     puts("没必要排");
 else
 {
  Linklist p,q,t;
  t=L;
  p=L->Next->Next;
  L->Next->Next=NULL;
  while(p)
  {
    q=p->Next;
    while(t->Next != NULL && t->Next.data<p.data)
                   t=t->Next;

    p->Next=t->Next;
    t->Next=p;
    p=q;
  }
 }

}
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值