数据结构顺序表题目(1)

顺序表题目描述及代码实现

题目描述:从顺序表中删除具有最小值的元素(假设唯一)并由函数返回被删元素的值。空出的位置由最后一个元素填补,若顺序表为空则显示出错误信息并退出运行。
题目分析:设置一个变量min记录最小的元素,初始值为顺序表的第一个元素,而后将其与顺序表的各元素相比,若有更小值,则更新min的值;设置一个变量index用于记录最小值的下标,用于将最后一元素填补到最小值元素的位置。

实现代码:

int del_sqlist(sqList &L,ElemType &min)
{
    
    
	if (L.length == 0)
		return false;
	min = L.data[0];
	int index = 0;
	for (int i = 1; i < length; i++)
	{
    
    
		if (L.data[i] < min)
		{
    
    
			min = L.data[i];
			index = i;
		}
	}
	L.data[index] = L.data[L.length - 1];
	L.length--;
	return min;
}

猜你喜欢

转载自blog.csdn.net/ATTAIN__/article/details/107885210