//按位置进行修改
int list__pos(linkListPtr L,datatype e,int pos){
//判断逻辑
if(NULL==L||pos<1||pos>L->len){
printf("修改失败\n");
return 0;
}
list_search_pos(L,pos)->data=e;
printf("修改成功\n");
return 1;
}
//按值进行修改
int list__value(linkListPtr L,datatype e,datatype eNew){
//循环逻辑
if(L==NULL||L->len==0){
printf("修改失败\n");
return 0;
}
//开始遍历寻找那个要改的值的位置
while(L){
if(L->data==e){
L->data=eNew;
}
L=L->next;
}
printf("修改成功\n");
return 1;
}
//链表排序
void list_sort(linkListPtr L){
//判断逻辑
if(NULL==L){
printf("排序失败\n");
}
//用选择排序
while(L->next->next){
linkListPtr p=L->next;
while(p->next){
if(L->next->data > p->next->data){
datatype temp=L->next->data;
L->next->data=p->next->data;
p->next->data=temp;
}
p=p->next;
}
L=L->next;
}
printf("排序成功\n");
}
【数据结构】数据结构基础:单链表表功能练习和双链表理论思维导图
最新推荐文章于 2024-10-05 15:32:05 发布