lesson17-2 数据结构与算法 P37Q55
发布时间
阅读量:
阅读量
题目描述:
假设存在一个由正整数组成的无序(向后)单链表,设计并实现以下功能的算法:
(1)定位最小值节点,并输出该节点对应的数值。
(2)若该数值为奇数,则将其与下一个节点中的数值进行交换。
(3)若该数值为偶数,则删除其后继节点。
代码:
void swapOrDelete_(LNode *L){//函数分解思想
LNode* min=findMinNode(L);//不知道最小值data是哪个节点 => 我去拿这个节点=>函数要返回一个结点的指针
if(min==NULL){
cout<<"链表为空"<<endl;
return;
}
if(min->next==NULL){
cout<<"最小值结点为末尾结点,无后继"<<endl;
return;
}
if(min->data%2!=0){
swap(min->data,min->next->data);
}
else{
LNode *q=min->next;
min->next=q->next;
free(q);
}
}
全部评论 (0)
还没有任何评论哟~
