首页 > 其他分享 >初级数据结构--插入删除查找表

初级数据结构--插入删除查找表

时间:2023-05-29 22:01:35浏览次数:41  
标签:return -- su int length 查找 SqList 数据结构 data

插入:头部插入、尾部插入、任意位置插入

删除:定位删除

查找:值查找、定位查找

//定义表
typedef struct
{
	int data[MAXSIZE];
	int length;
}SqList;
//初始化表
void InitSqList(SqList* pl)
{
	int i = 0;
	for (i = 0; i < MAXSIZE; i++)
		pl->data[i] = 0;
	pl->length = 0;
}
//插入元素
int ListInsert(SqList* p,int su,int n)
{
	if (p->length == MAXSIZE)
		return 0;
	if (su >= p->length && su >= 0)
		return 0;
	int i = 0;
	for (i = p->length; i <= su; i--)
		p->data[i] = p->data[i - 1];
	p->data[su-1] = n;
	p->length++;
	return 1;//成功
}
//删除元素
void DelList(SqList *p, int su)
{
	int i = 0;
	if (su >= p->length && su <= 0)
		return 0;//删除失败,定位超范围
	for (i = su; i >= p->length; i--)
		p->data[i] = p->data[i + 1];
	p->length--;
	return 1;//删除成功
}
//查找元素
int FindList(SqList *p, int value)
{
	int i = 0;
	for (i = 0; i < p->length; i++)
	{
		if (p->data[i] == value)
			return i;//找到返回下标
	}
	return 0;//找不到
}
int main()
{
	SqList s;
	InitSqList(&s);//初始化表
	ListInsert(&s, 3, 110);//(地址,插入位置[默认为指定元素],插入数据);
	DelList(&s, 3);//(地址,删除元素位置)
	system("pause");
	return 0;
}


标签:return,--,su,int,length,查找,SqList,数据结构,data
From: https://blog.51cto.com/u_16071993/6374046

相关文章

  • DML插入字段
    insertinto字段值values值--项目统计学生createtablecourse1(Studentint, cnamevarchar(20), ageint, genderchar(1), ddressvarchar(40) );-- 不推荐 insertintocourse1(Student,cname,age,gender,ddress) values(1,'小宋',20,'女',&......
  • 【2023 · CANN训练营第一季】——Ascend C算子背后的魔法
    前言:TIKC++,2023年CANN的一个神奇魔法,得益于TIKC++算子的孪生调试技术,我们可以了解到更多的技术细节,本文试图对隐藏在多核并行,流水计算、dobulebuffer背后的CANNAscendC算子魔法进行摸索和理解,是什么样的技术让用户编写的简单代码可以先实现上述神奇的功能。本文没有请专业人士......
  • facebook console.log bug All In One
    facebookconsole.logbugAllInOneconsole.logURLlinkbugerrors❌console.log(`查看https://www.facebook.com/selfxss详细了解。`)//查看https://www.facebook.com/selfxss详细了解。solutionaddwhitespacesbetweenURLandtext✅在链接与文字之间,添......
  • 【蓝桥杯集训·每日一题】AcWing 4496. 吃水果
    写在前面本人CSDN博客主页:这里一、题目1、原题链接4496.吃水果2、题目描述n个小朋友站成一排,等着吃水果。一共有m种水果,每种水果的数量都足够多。现在,要给每个小朋友都发一个水果,要求:在所有小朋友都拿到水果后,恰好有k个小朋友拿到的水果和其左边相邻小朋友拿到的水果不同(最左......
  • 常用的排序算法总结
    常用的排序算法一、冒泡排序冒泡排序(BubbleSort),是一种较简单的排序算法。它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。这......
  • Python程序与设计
    Python学习笔记2-27在命令行窗口中启动的Python解释器中实现在Python自带的IDLE中实现print("Helloworld")编码规范每个import语句只导入一个模块,尽量避免一次导入多个模块不要在行尾添加分号“:”,也不要用分号将两条命令放在同一行建议每行不超过80个字符使用必要的空行可以增加代......
  • 统计同名数据基于html js
    #1.教程1将数据逐行复制到excell2.新建txt文件,将excell中的全部数据复制到txt文件中3.使用edge打开统计同名数据.html,右击网页打开控制台4.选择txt文件,确认,会在控制台展示结果点击#2.数据示例可以有空格,回车,形式为:名称数量```DN150球铁平插 9DN150*90°球铁双平弯头 1......
  • 2021级《软件工程》 开发技能测试试卷题目-河北宏志大学学生成绩管理系统
    2021级《软件工程》开发技能测试试卷(180分钟)河北宏志大学学生成绩管理系统(卷面成绩40分)河北宏志大学学生成绩管理系统1、项目需求:学生管理是各大院校的管理工作中尤为重视的一项工作,它一直以来是学校管理的一项重要的衡量指标。学生管理系统的应用解决了学校日常学生管理工......
  • net-core(EF Core)-使用表达式树还是委托
    usingMicrosoft.EntityFrameworkCore;usingMicrosoft.EntityFrameworkCore.Metadata.Builders;publicclassMemberConfig:IEntityTypeConfiguration<Member>{publicvoidConfigure(EntityTypeBuilder<Member>builder){builder.ToTa......
  • [NextJS] getStaticProps
    Continue... Ref: Next.js产品级的React框架-中文开发入门教学-编写静态页面属性getStaticProps  为了爬虫,所以这么写。importHeadfrom'next/head'exportdefaultfunctionHome(props){const{datalist}=props;return(<div>......