篇章二线性表---基础知识

2026华为OD机考新系统真题 + 双机位C卷 + 往年真题 - 题库目录分值说明 + 考点说明+在线OJ 2026年4月1日起,华为OD机试正式切换至新系统模式!采用力扣模式,无需自己写输入! 难度大幅度降低。正在备考华为OD机试的同学,优先刷新系统机试真题,可大幅提升通过率。 新系统考题考点与旧版一致,无需重新适应。本专栏所有算法题均配有详细思路解析,并提供C语言、JS、C++、Python、Go、Java多语言源码实现。订阅后私信即可开通专属OJ刷题权限,高效备考一次上岸! 阅读详情

1.顺序表的结构体定义

//顺序表 
typedef struct{
	int data[maxsize];
	int length;
}SqList;

//单链表
typedef struct{
	int data;
	struct LNode *next;
}LNode;

//双链表
typedef struct DLNode
{
	int data;
	struct DLNode *prior;
	struct DLNode *next;
}DLNode; 

2.顺序表常见操作

//按元素值查找算法
int findElem(SQList L,int e)
{
	int i;
	for(i=0;i<L.length;i++)
		if(e==L.data[i])	
			return i;
	return -1;
} 

// 插入数据元素
int insertELem(SqList &L,int p,int e)
{
	int i;
	if(p<0||p>L.length||L.length==maxsize)
		return 0;
	for(i=L.length-1;i>=p;i--)
		L.data[i+1]=L.data[i];
	L.data[p]=e;
	++(L.length);
	return 1;
} 

//删除元素
int deleteElem(SqList &L,int p,int &e)
{
	int i;
	if(p<0||p>L.length-1)
		return 0;
	e=L.data[p];
	for(i=p;i<L.length-1;i++)
		L.data[i]=L.data[i+1];
	--(L.length);
	return 1; 
} 

3.单链表的操作

//尾插法建表
void createListR(LNode &L,int a[],int n)
{
	LNode *s,*r;
	int i;
	C=(LNode*)malloc(sizeof(LNode));
	C->next=NULL;
	r=C;
	for(i=0;i<n;i++)
	{
		s=(LNode*)malloc(sizeof(LNode));
		s->data=a[i];
		r->next=s;
		r=r->next;
	}
	r->next=NULL;
}
//尾插法建表
void createList(LNode *&C,int a[],int n)
{
	LNode *s;
	int i;
	C=(LNode*)malloc(sizeof(LNode));
	C->next=NULL;
	for(int i=0;i<n;i++)
	{
		s=(LNode*)malloc(sizeof(LNode));
		s->data=a[i];
		s->next=C->next;
		C->next=s;
	}
} 

//A,B两个单链表递增有序,将A和B归并成非递减有序C 
void merge(LNode *A,LNode *B,LNode *&C)
{
	LNode *p=A->next;LNode *q=B->next;
	LNode *r;
	c=A;c->next=NULL;free(B);
	r=C;
	while(p!=NULL&&q!=NULL)
	{
		if(p->data<=q->data)
		{
			r->next=p;p=p->next;r=r->next;
		}
		else
		{
			r->next=q;q=q->next;r=r->next;
		} 
	}
	if(p!=NULL)
		r->next=p;
	if(q!=NULL)
		r->next=q;
} 

//A,B两个单链表递增有序,将A和B归并成非递增有序C 
void merge(LNode *A,LNode *B,LNode *&C)
{
	LNode *p=A->next;LNode *q=B->next;
	LNode *s;
	c=A;c->next=NULL;free(B);
	while(p!=NULL&&q!=NULL)
	{
		if(p->data<=q->data)
		{
			s=p;p=p->next;s->next=c->next;c->next=s;
		}
		else
		{
			s=q;q=q->next;s->next=c->next;c->next=s;
		}
	}
	while(p!=NULL)
	{
		s=p;p=p->next;s->next=c->next;c->next=s; 
	}
	while(q!=NULL)
	{
		s=q;q=q->next;s->next=c->next;c->next=s;
	}
}

//查找链表C中值为x的结点,若存在,则删除
int findAndDelete(LNode *C,int x)
{
	LNode *p,*q;
	LNode *pre;
	p=c->next;pre=C;
	while(p!=NULL)
	{
		if(p->data==x)
		{
			pre=p;
			break;
		}
		p=p->next;
	} 
	if(p==NULL)
		return 0;
	else
	{
		pre->next=p->next;
		free(p);
	}
} 

4.双链表的操作

//采用尾插法
void createDistR(DLNode *&L,int a[],int n)
{
	DLNode *s,*r;
	int i;
	L=(DLNode *)malloc(sizeof(DLNode));
	L->prior=NULL;L->next=NULL;
	r=L;
	for(i=0;i<n;i++)
	{
		s=(DLNode*)malloc(sizeof(DLNode));
		s->data=a[i];
		r->next=s;
		s->prior=r;
		r=s;
	}
	r->next=NULL;
}

//查找结点
DLNode *findNode(DLNode *C,int x)
{
	DLNode *p=C->next;
	while(p!=NULL)
	{
		if(p-?data==x)
			break;
		p=p->next;
	}
	return p;
} 

//插入结点
	s->next=p->next;
	s->prior=p;
	p->next=s;
	s->next->prior=s;


//删除结点
	q=p->next;
	p->next=q->next;
	q->next->prior=p;
	free(q); 
 

 

基于STM32的智能手环心率血氧体温监测系统(完整设计) 本文设计了一款基于STM32单片机的多功能智能手环系统,集成心率、血氧、体温实时监测功能,并支持运动数据管理与健康预警。系统采用MAX30102传感器实现心率血氧监测,DS18B20检测体温,ADXL345进行步数统计,通过OLED屏幕显示数据。研究通过低功耗硬件选型与模块化软件架构设计,实现了多参数同步采集、阈值预警及蓝牙数据传输功能。测试结果表明,系统在健康监测精度、续航能力及用户交互体验上均达到预期目标,为个人健康管理提供了实用解决方案。 阅读详情

相关推荐

服务器被黑?快速检测和识别系统中的恶意进程

在管理服务器时,检测和识别系统中的恶意进程至关重要。本文介绍了使用 `ps`、`top`、`htop` 等系统监控工具,分析日志文件,以及使用 `chkrootkit` 和 `rkhunter` 等安全工具的方法。通过这些步骤,可以有效地检测和处理恶意进程,确保系统的安全和稳定。

_midnight的博客 1417

数据结构线性表算法总结及测试

数据结构线性表算法总结及测试 #define MaxSize 100 //顺序表查找:FindElem(SqList L,int e) //顺序表插入:InsertElem(SqList &L,int p,int e) //顺序表删除元素:DeleteElem(SqList &L,int p,int &e) //顺序表初始化:InitList(SqList &L) //顺序表取元素:GetElem(SqList L,int p,int &e) //尾插法创建单

m0_46144206的博客 299

单片机控制双向可控硅的5种实用触发电路设计(附完整电路图)

本文深入解析了单片机控制双向可控硅的5种实用触发电路设计,涵盖从基础隔离到复杂负载驱动的实战方案。重点探讨了光电耦合器选型、过零检测同步、RC吸收电路精密计算以及应对感性负载和高噪声环境的加固策略,并提供了完整的电路图与调试避坑指南,旨在帮助开发者实现安全可靠的交流负载控制。

joy55的博客 2210

数据结构考研笔记——顺序表常考操作

1.按元素值的查找算法 在顺序表中查找第一个值等于e的元素,并返回其下标,代码如下: int findElem (Sqlist L, int e) { int i; for (i=0; i&lt;L.length; ++i) if (e==L.data[i]) return i; return -1; } 2.插入数据元素的算法 在顺序表L的第p(0&l...

SmiledrinkCat的博客 760

LTspice第三方SPICE模型集成全流程指南

SPICE模型是电子电路仿真的核心基础,它通过数学方程描述半导体器件的非线性、温度依赖与寄生特性,决定仿真结果是否具备工程可信度。其技术价值在于 bridging 理论参数与实测行为,显著提升电源、电机驱动及逻辑电路设计的一次成功率。典型应用场景包括IGBT开关损耗分析、LDO瞬态响应验证、CMOS逻辑门传播延迟评估等。而LTspice作为轻量级工业级工具,依赖用户主动集成原厂提供的.subckt或.model文本模型——这正是‘LTspice导入SPICE模型’和‘74HC14 SPICE模型’等高频搜索

weixin_33868027的博客 305

法律AI工具横评:Kimi Work与WorkBuddy,谁更适合法律人?

在人工智能技术日益普及的今天,自然语言处理(NLP)和大语言模型(LLM)正深刻改变着专业领域的工作范式。其核心原理在于通过海量数据训练,使模型能够理解、生成和推理人类语言。这一技术价值在于将从业者从繁琐、重复的信息处理工作中解放出来,极大提升工作效率与知识获取的便捷性。在法律、金融、咨询等对文本处理要求极高的行业,AI助手已展现出在文档分析、信息检索和内容生成方面的巨大潜力。具体到法律应用场景,AI工具能够辅助完成合同审查、法律检索和文书起草等核心任务,成为专业人士的得力助手。本文聚焦于近期备受关注的两款

weixin_30279671的博客 560

数据结构习题——第二章 线性表

第二章 线性表 一、选择题 1.下述哪一条是顺序存储结构的优点?( ) A.存储密度大 B.插入运算方便 C.删除运算方便 D.可方便地用于各种逻辑结构的存储表示 2.下面关于线性表的叙述中,错误的是哪一个?( ) A.线性表采用顺序存储,必须占用一片连续的存储单元。 B.线性表采用顺序存储,便于进行插入和删除操作。 C.线性表采用链接存储,不必占用一片连续的存储单元。 D.线性表

Colin丶 2万+

3个PLC进阶教程实战项目,学完立即接私单!

此处应插入清晰的硬件电路图,包含土壤湿度传感器、水泵、PLC的输入输出端子,并标注清晰的接线方式。同样的,也需要插入清晰的梯形图,用简单的逻辑表达控制过程,比如:土壤湿度传感器信号低于设定值 -> PLC输出信号 -> 水泵启动。我是老王,一个在自动化行业摸爬滚打多年的老工程师,今天咱们不聊那些枯燥的理论,直接上手三个PLC进阶实战项目,学完保证你信心满满,立马就能接私单!想想你家里的空调,它也是通过检测室温,并根据设定的温度进行制冷或制热,这个项目就是类似的原理。

qq_38220914的博客 1472

计算机二级二叉树节点,2019-02-12 计算机二级公共基础知识之线性链表、树与二叉树...

整理自高教版《全国计算机等级考试二级教程——公共基础知识》和人邮版《全国计算机等级考试教程 二级公共基础知识》线性链表线性链表的基本概念线性表的顺序存储结构存在以下几方面的缺点:对于大的线性表,特别是元素插入或删除很频繁的情况下,采用顺序存储结构的插入与删除运算效率很低。在顺序存储结构下,线性表的存储空间不便于扩充。线性表的顺序存储结构不便于对存储空间的动态分配。因此,对于大的线性表,特别是元素变...

weixin_36304352的博客 520

UG\NX二次开发 分割曲线

分割曲线没有ufun函数?那就换一种思路实现。

王牌飞行员_里海的博客 1145

Android系统去掉长按webview界面弹框中的分享功能

Android 系统去解决长按显示内容,去掉分享功能,不论那个界面,是所有界面都需要满足。如果仅仅去掉系统自带的,那么系统来处理如果客户自定义,部分App自定义的菜单项,不是调用系统的,那么还是需要应用去解决的。之前做过Editext,其实还需要去TextView,最难点的就是WebView中的HTML了 去分享功能了。WebView中涉及到分享功能菜单的界面,/***//***//***//***//***//***//***//***//**

十年饮冰,难凉热血 1019

数据结构——双链表及其基本操作

/************************ author's email:wardseptember@gmail.com date:2017.12.30 双链表及其基本操作 ************************/ #include using namespace std; #define maxSize 10 typedef struct DLNode { int data

wardseptember的博客 1176

c# 如何使用S7NET 读取汇川H5U的数据

本文介绍了两种使用C#读取汇川H5U PLC数据的方法。第一种通过ModbusTCP协议(推荐),使用NModbus库实现,步骤包括配置PLC的Modbus服务器功能、安装库及编写读取保持寄存器的代码。第二种针对兼容西门子S7协议的型号,使用S7NetPlus库直接读取。文章强调需注意地址映射关系、协议配置及网络设置,并建议优先采用ModbusTCP方案以确保稳定性。两种方法均提供了完整的代码示例,帮助开发者快速实现在C#环境下与汇川H5U PLC的通信。

StevenChen的博客 457

篇章二线性表---常见操作

1.顺序表数组R[],元素0~m+n-1,前m个有序,后n个元素有序递增,使其整体有序 void insertSort(int R[],int n) { int i,j,temp; for(i=m;i&lt;=m+n-1;i++) { temp=R[i]; for(j=i-1;j&gt;=0&amp;&amp;temp&lt;R[j];j--) R[j]=R[j+1]; ...

Mind_programmonkey的博客 633

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

2024 CES 观察:美国本土车企缺席,智能汽车退居二线?

其中,梅赛德斯-奔驰(Mercedes-Benz)在 CES 上展示了全新 MBUX 虚拟助理。这个虚拟助手不仅能够根据上下文为用户提供个性化建议,还能进行自然流畅的对话,被认为是奔驰多媒体系统的下一代版本。即便到了智能电动车时代,奔驰也要将豪华概念坚持到底 | 奔驰比如,当用户说「我饿了」时,它不仅会推荐餐馆,还能筛选菜单和用户评论。此外,AI 系统还能提前为用户预定停车位,或者根据路况安排日程。

weixin_43769323的博客 1041

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

ChatGPT-4o赋能科研:自然科学研究的新篇章

以ChatGPT-4o代表AI大语言模型引领了新一波人工智能浪潮,也在自然科学各个过程中提升生产力,通过生物、地球、农业、气象、生态、环境、GIS科学领域中的大量案例,结合数据、文本、图片、代码、语音、视频等不同形式的数据、模式和内容,讲解自然科研的全流程,通过大模型辅助编写Python和R语言代码以及大模型API二次开发等技术对案例进行实现,带领大家快速进入科研新范式。

weixin_46747075的博客 1447

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

【竞技宝】CS2:EF官宣Calyx离队、jottAAA加入

EF昨日在官方社交账号上发布公告官宣正式下放Calyx:“Calyx多年来一直是我们家庭的一员,在我们所有人的心中占有特殊的地位,不仅因为他做出的贡献,还因为他所取得的成就和他的友谊。我们坚信,凭借他的才华,他一定会取得更大的成功。”jottAAA一名年仅22岁的土耳其籍选手,此前是EF青训培养的选手,在去年的3月,EF将jottAAA租借给了Sangal战队,此后jottAAA在二线赛事中发挥稳定,在2024年场均能够斩获1.12的rating帮助这支二线战队一度打进了EPLS20的正赛。

2301_78655017的博客 450

面试总结

  从上家公司辞职来北京一月有余,终于安排妥当,准备开启新的篇章。   从二线城市奔赴大北京,成为北漂中一员,一个人租住在不足十几平米的房子里,有时看一眼窗外,感觉这一切是虚幻又真实。或许在原来的公司,工作轻松,领导赏识,可我总觉得那不是我要的生活。于是我告诉我自己,当你看清楚自己心里的想法,就不要畏惧,勇敢的去做,于是我抛下舒适的生活,毅然决然的来到这里。其实现实也没有那么残酷,只要你勇敢的迈...

mmzzzzzz的博客 217

《Java程序员面试宝典(第4版)》 试读感想

《Java程序员面试宝典(第4版)》 试读感想        谈到Java程序员面试这个话题,我想,每个从事java开发的人都有一套自己的见解,特别是工作3年以上的。对于学校里将要毕业即将开始找工作的大学生来说,这个话题也是必不可少的。而这个问题对于一个Java工作5~6年、非技术专业转行、从基础开发到研发管理岗位的我来说,却是感慨万千。       因为是转行,学习Java的基础设计概念,也是...

用技术点亮生命,用产品温暖人心,探讨coding真谛,感悟技术精神。 605

程序员的薪资真相:如何通过智能化工具提升收入与竞争力

最新接入DeepSeek-V3模型,点击下载最新版本InsCode AI IDE 程序员的薪资真相:如何通过智能化工具提升收入与竞争力 引言 程序员作为当今科技领域的重要角色,其薪资水平一直备受关注。随着技术的快速发展和市场需求的不断变化,程序员的收入也在逐年攀升。然而,除了高薪之外,如何利用先进的工具和技术提升编程效率、减少重复劳动、提高代码质量,成为每个程序员必须思考的问题。本文将探讨程序员的...

inscode_086的博客 782

2021年年终总结:工作10年宝妈级别的前端开发工程师年终总结

大家好,我是前端岚枫,一枚二线城市的程序媛,今天也是在公司上班的最后一天(因为公司要全员放长假,啥时候能上班待定),即将为从2011毕业到现在10年工作的历程画上句号。在这里总结一下自己2021年。 工作方面 一年工作部门调整了三次,最后还是没熬住经济压力,公司最终还是要全体放长假,公司发通知,从明天开始放假到2022年3月31日,具体是否上班,另发通知。 收到消息那一刻,说不出啥感觉,从2011年3月28日到今天,换了不少的技术的部门,经历了不少公司项目,技术从刚开始的简单的切图,js,jq,到现在的.

前端岚枫 4156

海南封关:不止是贸易自由港,更是真实世界资产(RWA)的数字化密钥

海南自贸港封关运作开启RWA发展新篇章 海南自贸港2025年全岛封关运作,零关税、技术创新及独特流通管控模式推动其成为全球RWA(现实世界资产数字化)枢纽。RWA通过区块链技术将实体资产转化为可交易的数字凭证,解决传统资产流转难题。海南的政策优势(如6637项零关税税目、区块链扶持政策)为跨境贸易、文旅、绿色能源等产业提供数字化机遇,降低融资门槛,提升资产流动性。未来,专利、艺术品、应收账款等资产有望通过RWA实现高效跨境流通,助力中小企业全球化发展。海南或将成为全球RWA浪潮的关键节点,推动数字经济与实体

WSY_xy的博客 967

首个口服 XPO1 抑制剂塞利尼索:为蛋白酶体抑制剂经治患者开启全新治疗篇章

相信在不久的将来,塞利尼索将如同一位英勇的战士,在血液肿瘤治疗的战场上披荆斩棘,为更多患者驱散病魔的阴霾,带来健康和光明的未来。在传统的血液肿瘤治疗中,注射用药是常见的方式。医生们根据患者的具体情况,充分发挥塞利尼索的优势,将其与其他药物联合使用或单药治疗,为蛋白酶体抑制剂经治患者制定个性化的治疗方案。就在这样的背景下,首个口服选择性核输出蛋白 1(XPO1)抑制剂塞利尼索宛如一颗璀璨的新星,闪耀登场,为蛋白酶体抑制剂经治的 MM 患者带来了一种全新机制的治疗方案,也为整个血液肿瘤治疗领域注入了新的活力。

HEADKON的博客 177

开启数字校园新篇章&nbsp;福建农林大学智慧校园 “数字 FAFU”

听劝,这个公司值得去吗# 大佬们问下,目前犹豫的一点在于一个是乘用车研发岗位,一个是商用车(重型卡车)研发岗位,然后重汽需要六个月车间工作,之。家人们,中兴这是啥意思啊,投的算法面试说给我转研发或测试,面完一面二面一个多月了,别人都收到洽谈,转岗的也收到了,虽然不抱什么希望了,但是之前起码在池子里,。#找对象# 男,99年,身高182,体重60kg,颜值中上,硕士明年毕业,现base深圳,通信公司,签了年薪35w+offer,对待感情专一,有点恋爱脑,乐观开。#我想象的工作vs实际工作#

Buoluochuixue的博客 292
上一篇: 数据结构----绪论
下一篇: 篇章二线性表---常见操作
mind_programmonkey
mind_programmonkey 领域专家: 算法与数据结构技术领域 领域专家: 算法与数据结构技术领域
博客等级 码龄9年 4435粉丝 1111原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mind_programmonkey

你的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值