//按位置进行修改
int list_update_pos(linklistPtr L,int pos,datatype e)
{
if(NULL==L || list_empty(L) || pos<1 || pos >L->len)
{
printf("修改失败\n");
return 0;
}
linklistPtr q=list_search_pos(L,pos);
q->data=e;
printf("修改成功\n");
return 1;
}
//按值进行修改
int list_update_value(linklistPtr L,datatype old_e,datatype new_e)
{
if(NULL==L || list_empty(L) || old_e==new_e)
{
printf("修改失败\n");
return 0;
}
for(int i=1;i<=L->len;i++)
{
if(list_search_pos(L,i)->data==old_e)
{
list_update_pos(L,i,new_e);
}
}
printf("修改成功\n");
return 1;
}
//链表的排序
void list_sort(linklistPtr L)
{
if(NULL==L || list_empty(L))
{
printf("排序失败\n");
return ;
}
for(int i=1;i<=L->len;i++)
{
for(int j=1;j<=L->len;j++)
{
if(list_search_pos(L,i)->data <list_search_pos(L,j)->data)
{
datatype temp=list_search_pos(L,i)->data;
list_search_pos(L,i)->data=list_search_pos(L,j)->data;
list_search_pos(L,j)->data=temp;
}
}
}
printf("排序成功\n");
}