資料結構連結串列筆試題

大螺丝贼六發表於2024-04-23

資料結構連結串列筆試題

筆試題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 *prev=L;//當前節點的直接前驅地址
	Node_Type *minnode=	current;//最小值節點的地址
	int min=Lcurrent-->data;//最小值
	Node_Type *ptr=	pre;
	
	//遍歷連結串列,找出最小值節點並刪除
	whlie(current)
	{
		if(min>current-->data	)
		{
			min=current-->data;
			minnode=current;
			prev=ptr;
		}
		current=current-->Next;//自增到下一個節點
		ptr=ptr-->next;
		

	}
	prev-->next=minnode-->next;//刪除最小值節點
	minnode-->next=NULL;
	free(minnode);//釋放最小值節點的記憶體
	return;
}

相關文章