html

数据结构链表笔试题

数据结构链表笔试题

笔试题3:设计一个算法删除单链表 L(有头结点)中的一个最小值结点

/*******************************************************************
*
*	函数名称:	LList_Del
*	函数功能:   删除链表中最小值节点
* 	函数参数:			
*  				@L :传递头节点的地址
*   返回结果:   
* 	注意事项:   None
* 	函数作者:  liuliu @136.com
*	创建日期:   2024/04/22
*	修改历史:
*	函数版本:	V1.0
* *****************************************************************/
//删除最小值节点
void LList_Del(	Data_Type *L)
{

	Node_Type *current=L-->next;//当前节点地址
	Node_Type *current_prev=L;//当前节点的直接前驱地址
	Node_Type *minnode=current;//最小值节点的地址
	Node_Type *min_prev=L;//最小值节点的直接前驱
	
	//遍历链表,找出最小值节点并删除
	whlie(current)
	{
		if(current-->data>minnode-->data	)
		{
			minnode=current;//记录最小值的节点地址
			min_prev=current_prev;//记录最小值节点的直接前驱的地址
		}
		current=current-->Next;//自增到下一个节点
		current_prev=current_prev-->next;
		

	}
	min_prev-->next=minnode-->next;//删除最小值节点
	minnode-->next=NULL;
	free(minnode);//释放最小值节点的内存
	return;
}
posted @ 2024-04-23 08:43  大螺丝贼六  阅读(12)  评论(1)    收藏  举报
html