【数据结构/习题】第二章 线性表

声明: 王道书课后习题代码,个人备考使用,仅供参考。
查看完整目录

顺序表(P19)

删除最小元素,并把最后一个移到删除位置,返回删除的最小值

//1、删除最小元素,并把最后一个移到删除位置,返回删除的最小值,如果表为空,显示出错信息并退出运行
bool DeleteMin(SqList* L, ElemType* value) {
	if (L->length==0)
	{
		return false;
	}
	int index = 0;	//存放最小元素下标
	value = L->data[index];	//存放最小元素的值
	for (int i = 1; i < L->length; i++) {
		if (L->data[i] < min)
		{
			value = L->data[i];
			index = i;
		}
	}
	L->data[index] = L->data[L->length - 1];
	L->length--;
	return true;
}

将所有元素逆置,空间复杂度为O(1)

//2、将所有元素逆置,空间复杂度为O(1)
void vert(SqList* L) {
	for (int i= 0; i < L->length/2; i++) {
		int temp = L->data[i];
		L->data[i] = L->data[L->length - 1 - i];
		L->data[L->length - 1 - i] = temp;
	}
}

猜你喜欢

转载自www.cnblogs.com/wangjiaolong/p/13205336.html