顺序表-删除所有元素值为x结点(相等加一,不等前移k)
顺序表的存储结构:
typedef struct{int data[Maxsize]; //存在顺序表中的元素int length; //存放顺序表的长度}SqList;
分析:
这里要删除顺序表的所有值为x的结点,跟单链表那题题意相同。
主要区别就是:存储结构不同
这里是顺序存储结构
单链表是链式存储结构
所以解题方法也跟链表的不一样。
这里采用:相等加一,不等前移k
我们用k记录下元素值等于x的元素个数,其初始值为0.
如果L.data[i] 等于x,那么k++;
若不等于,将其前移k个位置。即存放在L.data[i-k] = k; //前移k个位置。
思路:
1.定义循环变量i,和记录相等的个数k
2.通过while循环。条件为i< L.length.
如果L.data[i] 等于x,那么k++;
若不等于,将其前移k个位置。即存放在L.data[i-k] = k; //前移k个位置。
3.表长置为:L.length = k;
C代码实现:
void delsll1(SqList &L,int x){int i = 0,k = 0;while(i<L.length){if(L.data[i] == x){k++;}else{L.data[i-k] =L.data[k]; //相等加一,不等前移k}L.length = k; //表长置为k}
}
顺序表-删除所有元素值为x结点(相等加一,不等前移k)相关推荐
- 顺序表-删除所有元素值为x结点(另建表存放+复制到原表)
顺序表的存储结构: typedef struct{int data[Maxsize]; //存在顺序表中的元素int length; //存放顺序表的长度}SqList; 分析: 这里要删除顺序表的所 ...
- 顺序表-删除所有元素值为x结点(遍历.新建顺序表(共享原空间))
顺序表的存储结构: typedef struct{int data[Maxsize]; //存在顺序表中的元素int length; //存放顺序表的长度}SqList; 分析: 这里要删除顺序表的所 ...
- 顺序表删除重复元素(完整代码的实现)
[问题描述] 设一顺序表有若干元素,编写程序实现删除表中值重复的元素,即重复元素只保留一个. [输入形式] 第一行输入一个N(N不大于100),表示顺序表的长度: 第二行输入N个整数,表示顺序表元素: ...
- 数据结构——顺序表删除练习
代码功能: 1. 删除顺序表中第一个值为x的元素 2. 删除顺序表中所有值为x的元素 3. 删除顺序表中下标为p的连续k个元素 函数说明: 函数声明:PSeqList createNullList_s ...
- C语言创建顺序表并插入元素 详细注释
顺序表是用一组地址连续的存储单元依次存储数据元素的数据结构.顺序表是线性表的一种,线性表是最常用且最简单的一种数据结构,一个线性表是 n 个数据元素的有限序列.我们使用 c 语言来创建顺序表并插入元素 ...
- 顺序表如何插入元素? 看这里!!
设计算法:将一个元素插入到有序的顺序表中,使顺序表仍有序,并编写主函数测试算法. 1. 算法: ①将一个顺序表利用冒泡排序的方法从小到大排序: ②将要插入的数据x与顺序表的元素一一进行比较,如果存在相 ...
- 在顺序表中第五个位置插入一个元素9,实现顺序表插入的基本操作,输出顺序表中所有元素
题目 在顺序表中第五个位置插入一个元素9,实现顺序表插入的基本操作,输出顺序表中所有元素 #include<iostream>using namespace std; #define OK ...
- 顺序表-插入一个元素x后保持该顺序表L递增有序排序(查找+元素后移插入)
顺序表的存储结构: typedef struct{int data[Maxsize]; //存在顺序表中的元素int length; //存放顺序表的长度}SqList; 分析: 要保持插入一个元素后 ...
- 设计一个算法,删除一个单链表L中元素值最大的结点(假设最大值结点是唯一的)
设计一个算法,删除一个单链表L中元素值最大的结点(假设最大值结点是唯一的). #include <stdio.h> #include<malloc.h> typedef str ...
最新文章
- python ord()与chr()用法以及区别
- java bufferarray_如何使用Java的ByteBuffer.arrayOffset()方法
- python表白程序-我喜欢你 抖音表白程序python版
- 作业: IT 行业博客网站分析和创新
- Python程序设计之如何设置统一编码格式
- C语言 数组定义和使用 - C语言零基础入门教程
- Activiti 用户任务并行动态多实例(多用户执行流程)
- Win10重装后电脑关不了机如何解决
- selinux --chcon命令
- Android 签名文件的sha1值查看
- 用Python中的VTK库导入并显示Assembly的STL文件
- v中国瓶装水市场营销状况与销售动态分析报告2022-2027年
- 第一章 Python数据模型
- 2021半年度博客总结
- windows media player 服务器运行失败
- 修改tomcat的默认端口号是在tomcat的哪个配置文件里面?
- 用云开发搭建的微信答题小程序v1.0
- python素数,获取100以内的孪生素数
- 多渠道归因分析:python实现马尔可夫链归因(三)
- 【算法】红黑树(二叉树)概念与查询(一)
热门文章
- (三)WebGIS前端地图显示之根据地理范围换算出瓦片行列号的原理(核心)
- 执行spring boot应用三种方式
- 小tips:JS中typeof与instanceof用法
- MySQL性能优化、故障排查及最佳实践秘籍,阿里云数据库专家玄惭的“武功”全记录...
- ASP.NET Core中的依赖注入(2):依赖注入(DI)
- eclipse无法自动识别出svn项目
- SortedDictionaryTKey, TValue 类 表示根据键进行排序的键/值对的集合。
- SQL SERVER错误:已超过了锁请求超时时段。 (Microsoft SQL Server,错误: 1222)
- 如何在你的应用中使用Jasypt来保护你的数据库用户名和密码
- 一次受限制、无连接的故障处理