思维导图
按值进行修改
int linklist_value_chage(Linklist_ptr L, char name2[], booktype book){
if(NULL==L||linklist_empty(L)){
printf("修改失败\n");
return 0;
}
//修改逻辑
int pos = linklist_search_value(L,name2);
Linklist_ptr p = linklist_search_pos(L,pos);
p->book = book;
return 1;
}
按位置进行修改
int linklist_pos_chage(Linklist_ptr L, int pos,booktype book){
if(NULL==L||linklist_empty(L)||pos<1||pos>L->len){
printf("修改失败\n");
return 0;
}
//修改逻辑
Linklist_ptr p = linklist_search_pos(L,pos);
p->book = book;
return 1;
}
链表排序
void linklist_sort(Linklist_ptr L){
if(NULL==L||L->len<=1){
printf("排序失败\n");
return;
}
booktype temp;
for(int i=1;i<L->len;i++){
for(int j=1;j<=L->len-i;j++){
if(linklist_search_pos(L,j)->book.price>linklist_search_pos(L,j+1)->book.price){
temp = linklist_search_pos(L,j)->book;
linklist_search_pos(L,j)->book = linklist_search_pos(L,j+1)->book;
linklist_search_pos(L,j+1)->book = temp;
}
}
}
}