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

本文主要是介绍从顺序表中删除其值在给定值s与t之间 (包含s和t,要求s<t) 的所有元素,若s或t不合理或顺序表为空,则显示出错信息并退出运行。,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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

// 删除顺序表 L 中闭区间 [s, t] 内的元素
bool DeleteS_T(SqList &L, int s, int t) {// 若顺序表为空或给定区间无效,则无法删除,返回 falseif (L.length == 0 || s >= t)return false;// 记录待删除的元素个数int count = 0;// 遍历顺序表for (int i = 0; i < L.length; i++) {// 若元素位于给定区间内,增加待删除计数if (L.data[i] >= s && L.data[i] <= t)count++;else// 将不在区间内的元素向前移动 count 个位置L.data[i - count] = L.data[i];}// 更新顺序表长度,即删除区间内的元素L.length -= count;// 删除操作成功,返回 truereturn true;
}

若将条件改为有序顺序表中删除在s和t之前的元素,其他不变则:

bool DeleteST(SqList &L, int s, int t) {if (L.length == 0 || s >= t)return false;int i, j;// 找到第一个大于等于s的元素的位置ifor (i = 0; i < L.length && L.data[i] < s; i++);// 找到第一个大于等于t的元素的位置jfor (j = i; j < L.length && L.data[j] <= t; j++);// 将[j, L.length)范围内的元素向前移动i-j个位置for (; j < L.length; i++, j++)L.data[i] = L.data[j];// 更新顺序表的长度L.length = i;return true;
}

这篇关于从顺序表中删除其值在给定值s与t之间 (包含s和t,要求s<t) 的所有元素,若s或t不合理或顺序表为空,则显示出错信息并退出运行。的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/456662

相关文章

Python打印对象所有属性和值的方法小结

《Python打印对象所有属性和值的方法小结》在Python开发过程中,调试代码时经常需要查看对象的当前状态,也就是对象的所有属性和对应的值,然而,Python并没有像PHP的print_r那样直接提... 目录python中打印对象所有属性和值的方法实现步骤1. 使用vars()和pprint()2. 使

CSS实现元素撑满剩余空间的五种方法

《CSS实现元素撑满剩余空间的五种方法》在日常开发中,我们经常需要让某个元素占据容器的剩余空间,本文将介绍5种不同的方法来实现这个需求,并分析各种方法的优缺点,感兴趣的朋友一起看看吧... css实现元素撑满剩余空间的5种方法 在日常开发中,我们经常需要让某个元素占据容器的剩余空间。这是一个常见的布局需求

Java实现删除文件中的指定内容

《Java实现删除文件中的指定内容》在日常开发中,经常需要对文本文件进行批量处理,其中,删除文件中指定内容是最常见的需求之一,下面我们就来看看如何使用java实现删除文件中的指定内容吧... 目录1. 项目背景详细介绍2. 项目需求详细介绍2.1 功能需求2.2 非功能需求3. 相关技术详细介绍3.1 Ja

Python pip下载包及所有依赖到指定文件夹的步骤说明

《Pythonpip下载包及所有依赖到指定文件夹的步骤说明》为了方便开发和部署,我们常常需要将Python项目所依赖的第三方包导出到本地文件夹中,:本文主要介绍Pythonpip下载包及所有依... 目录步骤说明命令格式示例参数说明离线安装方法注意事项总结要使用pip下载包及其所有依赖到指定文件夹,请按照以

java Long 与long之间的转换流程

《javaLong与long之间的转换流程》Long类提供了一些方法,用于在long和其他数据类型(如String)之间进行转换,本文将详细介绍如何在Java中实现Long和long之间的转换,感... 目录概述流程步骤1:将long转换为Long对象步骤2:将Longhttp://www.cppcns.c

Redis过期删除机制与内存淘汰策略的解析指南

《Redis过期删除机制与内存淘汰策略的解析指南》在使用Redis构建缓存系统时,很多开发者只设置了EXPIRE但却忽略了背后Redis的过期删除机制与内存淘汰策略,下面小编就来和大家详细介绍一下... 目录1、简述2、Redis http://www.chinasem.cn的过期删除策略(Key Expir

安装centos8设置基础软件仓库时出错的解决方案

《安装centos8设置基础软件仓库时出错的解决方案》:本文主要介绍安装centos8设置基础软件仓库时出错的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录安装Centos8设置基础软件仓库时出错版本 8版本 8.2.200android4版本 javas

Java中JSON格式反序列化为Map且保证存取顺序一致的问题

《Java中JSON格式反序列化为Map且保证存取顺序一致的问题》:本文主要介绍Java中JSON格式反序列化为Map且保证存取顺序一致的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未... 目录背景问题解决方法总结背景做项目涉及两个微服务之间传数据时,需要提供方将Map类型的数据序列化为co

RedisTemplate默认序列化方式显示中文乱码的解决

《RedisTemplate默认序列化方式显示中文乱码的解决》本文主要介绍了SpringDataRedis默认使用JdkSerializationRedisSerializer导致数据乱码,文中通过示... 目录1. 问题原因2. 解决方案3. 配置类示例4. 配置说明5. 使用示例6. 验证存储结果7.

Java -jar命令如何运行外部依赖JAR包

《Java-jar命令如何运行外部依赖JAR包》在Java应用部署中,java-jar命令是启动可执行JAR包的标准方式,但当应用需要依赖外部JAR文件时,直接使用java-jar会面临类加载困... 目录引言:外部依赖JAR的必要性一、问题本质:类加载机制的限制1. Java -jar的默认行为2. 类加