//按位置进行修改
int list_change_pos(LinkListPtr L,int pos,datatype e)
{
if(NULL==L||pos<1||pos>L->len)
{
printf("修改失败\n");
return 0;
}
LinkListPtr p=list_search_pos(L,pos);
p->data=e;
printf("修改成功\n");
return 1;
}
//按值进行修改
int list_change_value(LinkListPtr L,char ch,datatype e)
{
int pos=list_search_value(L,ch);
if(NULL==L||pos==0)
{
printf("修改失败\n");
return 0;
}
LinkListPtr p=list_search_pos(L,pos);
p->data=e;
printf("修改成功\n");
return 1;
}
//链表排序
void list_sort(LinkListPtr L)
{
if(NULL==L)
{
printf("排序失败\n");
return;
}
LinkListPtr q=L->next;
for(int i=1;i<L->len;i++)
{
q=L->next;
for(int j=0;j<L->len-i;j++)
{
if(q->data > q->next->data)
{
char temp=q->data;
q->data=q->next->data;
q->next->data=temp;
}
q=q->next;
}
}
printf("排序成功\n");
}
23062数据结构05
于 2023-08-07 20:56:05 首次发布
文章介绍了两个链表操作函数,包括按位置改变节点数据(intlist_change_pos)和按值查找并修改数据(intlist_change_value),以及对链表进行排序(list_sort)的方法。
摘要由CSDN通过智能技术生成