从顺序表中删除其值在给定值s-t之间的所有元素

题目描述

从顺序表中删除其值在给定值s-t之间(包含s和t,要求s<t)的所有元素,若s或t不合理或顺序表为空,则显示错误信息并退出运行

cpp 复制代码
#include<iostream>
using namespace std;
#define Maxsize 1000

typedef struct
{
	int data[Maxsize];
	int length;
}sqList;

bool del_s_t(sqList& L, int s, int t)
{
	int k = 0;
	if (L.length == 0 || s > t)
		return false;
	for (int i = 0; i < L.length; i++)
	{
		if (L.data[i] >= s && L.data[i] <= t)
		{
			k++;
		}
		else L.data[i - k] = L.data[i];
	}
	L.length -= k;
	return true;
}
int main()
{
	sqList L = {1,3,4,5,8,9,10};
	L.length = 7;
	cout << "init seq:";
	for (int i = 0; i < L.length; i++)
		cout << L.data[i] << " ";
	cout << endl;
	del_s_t(L, 2,5);
	cout << "changed seq:";
	for (int i = 0; i < L.length; i++)
		cout << L.data[i] << " ";
	return 0;

}
相关推荐
业精于勤的牙3 小时前
浅谈:算法中的斐波那契数(二)
算法·职场和发展
不穿格子的程序员3 小时前
从零开始写算法——链表篇4:删除链表的倒数第 N 个结点 + 两两交换链表中的节点
数据结构·算法·链表
liuyao_xianhui3 小时前
寻找峰值--优选算法(二分查找法)
算法
dragoooon343 小时前
[hot100 NO.19~24]
数据结构·算法
Tony_yitao5 小时前
15.华为OD机考 - 执行任务赚积分
数据结构·算法·华为od·algorithm
C雨后彩虹5 小时前
任务总执行时长
java·数据结构·算法·华为·面试
风筝在晴天搁浅5 小时前
代码随想录 463.岛屿的周长
算法
一个不知名程序员www6 小时前
算法学习入门---priority_queue(C++)
c++·算法
TL滕6 小时前
从0开始学算法——第十八天(分治算法)
笔记·学习·算法