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

Excel转LaTeX表格神器:excel2latex.xla插件使用全攻略(含下载链接与配置教程) 本文详细介绍了Excel转LaTeX表格神器excel2latex.xla插件的完整使用攻略。从下载安装、基础转换到高级配置,深入讲解了如何利用该插件高效生成LaTeX代码,特别针对IEEE双栏等复杂排版需求提供了专业解决方案,帮助用户彻底告别手动编码,提升学术与专业文档的排版效率。 阅读详情

1.顺序表数组R[],元素0~m+n-1,前m个有序,后n个元素有序递增,使其整体有序

void insertSort(int R[],int n)
{
	int i,j,temp;
	for(i=m;i<=m+n-1;i++)
	{
		temp=R[i];
		for(j=i-1;j>=0&&temp<R[j];j--)
			R[j]=R[j+1];
		R[j+1]=temp;
	}	
}

2.递增有序的单链表A,B,求出A和B的差集(仅在A出现,而不再B出现)

void differ(LNode *A,LNode *B)
{
	LNode *p=A->next;LNode *q=B->next;
	LNode *pre=A;
	LNode *r;
	while(p!=NULL&&q!=NULL)
	{
		if(p->data<q->data)
		{
			pre=p;
			p=p->next;
		}
		else if(p->data>q->data)
			q=q->next;
		else
		{
			pre->next=p->next;
			r=p;
			p=p->next;
			free(r);
		}
	}
}

3.将顺序表中的元素逆置

void reverse(SqList *&L)
{
	int i,j;
	int temp;
	for(i=0,j=L.length-1;i<j;i++,j--)
	{
		temp=L.data[i];
		L.data[i]]=L.data[j];
		L.data[j]=temp;
	}
}

 

4.从一给定的顺序表中删除下标i-j

void delete(Sqlist &L,int i,int j)
{
	int k,deleta;
	deleta=j-i+1;
	for(k=j+1;k<L.length;k++)
		L.data[k-deleta]=L.data[k];
	L.length=deleta;
}

5.顺序表整型数据,将L中所有小于表头元素放前面,大于表头元素的放在后半部分。

void move(Sqlist &L)
{
	int i,j;int temp;
	i=0,j=L.length-1;
	temp=L.data[i];
	while(i<j)
	{
		while(i<j&&L.data[j]>temp)	
			j--;
		if(i<j)
		{
			L.data[i]=L.data[j];
			i++;
		}
		while(i<j&&L.data[i]<temp)
			i++;
		if(i<j)
		{
			L.data[j]=L.data[i];
			j--;
		}
	}
	L.data[i]=temp;
}

6.递增非空单链表,设计一个算法删除值域重复的结点

void delsll(LNode *L)
{
	LNode *p=L->next,*q;
	while(p->next!=NULL)
	{
		if(p->data==p->next->data)
		{
			q=p->next;
			p->next=q->next;
			free(q);
		}
		p=p->next;
	}
}

 

7.删除单链表L中最小值结点


void delminnode(LNode *&L)
{
	LNode *pre=L;LNode *p=L->next;
	LNode *minpre,minp=p;
	while(p!=NULL)
	{
		if(p->data<minp->data)
		{
			min=p;
			minpre=pre;
		}
		pre=p;
		p=p->next;
	}
	minpre->next=minp->next;
	free(minp);
}

8.带头结点的单链表逆置

void reverse(LNode *L)
{
	LNode *p=L->next,*q;
	L->next=NULL;
	while(p!=NULL)
	{
		q=p;
		p=p->next;
		q->next=L->next;
		L->next=q;
	}
}

9.带头结点单链表分解成两个单链表A,B,A只含data域为奇数结点,B中只含data域为偶数结点

void split(LNode *A,LNode *&B)
{
	LNode *p,*q,*r;
	B=(LNode*)malloc(sizeof(LNode));
	B->next=NULL;
	r=B;
	p=A;
	while(p->next!=NULL)
	{
		if(p->next->data%2==0)
		{
			q=p->next;
			p->next=q->next;
			q->next=NULL;
			r->next=q;
			r=q;
		}
		else
			p=p->next;
	} 
} 

10.逆序输出单链表中的数据

void reprint(LNode *L)
{
	if(L!=NULL)
	{
		reprint(L->next);
		cout<<L->data;
	}
}

11.除去最大公共前缀后子表比较大小

int compare(float A[],int An,float B[],int Bn)
{
	int i=0;
	while(i<An&&i<Bn)
	{
		if(fabs(A[i]-B[i])<MIN)
			i++;
		else
			break;
	}
	if(i>=An&&i>=Bn)
		return 0;
	else if(i>=An&&i<Bn||A[i]<B[i])
		return -1;
	else 
		return 1;
		
} 

12.输出链表中倒数第k个位置上的结点

int findElem(LNode *head,int k) 
{
	LNode *q=head->next,*p=head;
	int i=1;
	while(q!=NULL)
	{
		q=q->next;
		i++;
		if(i>k)
			p=p->next;
	}
	if(p==head)
		return 0;
	else
	{
		cout<<p->data;
		return 0;
	}
}

13.对两个非递减有序的顺序表A,B进行合并,合并后的结果放A[]中

int comb(int A[],int &na,int B[],int nb)
{
	if(na+nb<maxsize)
		return -1;
	int i=na,j=nb;
	while(j>0)
	{
		if(i==0||A[i-1]<B[j-1])
		{
			A[j+i-1]=B[j-1];
			--j;
		} 
		else
		{
			A[j+i-1]=A[i-1];
			--i;
		}
	}
}

14.L为单链表,试写出下面运算的递归算法

//求链表中的最大整数
int getMax(LNode *L)
{
	if(L->next==NULL)
		return L->data;
	int temp=getMax(L-data);
	if(L->data>temp)
		return L->data;
	else
		return temp;
} 
//其链表中的结点个数
int getNum(LNode *L)
{
	if(L->next==NULL)
		return 1;
	return 1+getNum(L->next);
} 
//求所有整数的平均值
float getAvg(LNode *L,int n)
{
	if(L->next==NULL)
		return (float)(L->data);
	else
	{
		float sum=getAvg(L->next,n-1)*(n-1);
		return (float)(L->data+sum)/n;
	}
} 

 

Trae 保姆级使用指南,零基础小白也能实现编程。 Trae 使用指南 Trae AI 使用 零基础编程 满血版 DeepSeek-R1&V3 AI IDE 深度理解中文开发场景 傻瓜式编程 编程入门 开发入门 阅读详情

相关推荐

用MATLAB从零实现六足机器人步态仿真:交替三角与波动步态保姆级教程

本文详细介绍了如何使用MATLAB从零实现六足机器人的两种经典步态仿真:交替三角支撑步态和波动步态。通过参数定义、相位设置、运动轨迹生成和三维可视化等步骤,帮助读者掌握六足机器人步态规划的核心技术。教程包含完整代码和详细解析,适合机器人爱好者和相关专业学生学习实践。

weixin_26765363的博客 228

算法设计-归并两个非递减有序排列的线性表

已知线性表La和Lb中的数据元素按值非递减有序排列,现要求将两个线性表归并为一个新的线性表Lc,Lc中的数据要求按值非递减有序。 void MergerList(List &amp;La,List &amp;Lb,List &amp;Lc)     {                                                                  //归并a,b线...

愚 公 6013

Nvidia Tesla A100 驱动安装方法

Nvidia Tesla A100 驱动安装方法 遇到的问题:以前安装tesla系列、geforce系列等gpu 驱动的时候,只需执行nvidiaxxxx.run驱动包或者安装nvidiaxxxx.rpm包即可,但遇到新的GPU Nvidia Tesla A100的时候,安装完驱动似乎不起作用,找了半天资料,原来需要以下步骤才可以使用;

qq_24343177的博客 2万+

给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。并排序[c实现]

void merge(int* nums1, int nums1Size, int m, int* nums2, int nums2Size, int n) { int end1=m-1; int end2=n-1; int end=n+m-1; while(end1>=0&&end2>=0) { if(nums1[end1]>=nums2[end2]) { nums...

不会编程喵的博客 2086

Unity WebGL项目如何实现画布透明,完美融入网页背景(附.jslib文件与完整配置)

本文详细解析了Unity WebGL项目实现画布透明化的技术原理与实战步骤,从.jslib文件配置到前端框架集成,帮助开发者解决默认背景色问题,实现3D内容与网页设计的无缝融合。重点介绍了透明化核心机制、常见误区及React/Vue等现代框架中的最佳实践方案。

weixin_31896061的博客 300

MIPI C-PHY介绍(Specification for C-PHY V1.2)

本文档描述了一个名为C-PHY的高速串行接口,它在带宽有限(bandwidth limited channels,看的有人说C的含义就是channel limit)的通道上提供高吞吐量性能,用于连接到外设,包括显示器和摄像头。首先0x4fff在0x4000~0x4fff区域,则f=(0,0,0,0,0,0,1),顺序是S6~S1;最后,端到端的传输过程是什么样呢,如下图所示,16bit先转换成7个符号(每个符号3位,共21位),然后并行数据转换成串行数据,输送到符号编码器和3个线的驱动器,接收端流程相反。

qflook的博客 5877

设计一个算法删除单链表L(带头结点)中的最小值结点

void delminnode(LinkNode * & L){ LinkNode *r=L,*p=L->next,*q=p->next,*s=p; //p总是指向最小结点,r总是指向p的前驱结 点,q遍历,s指向q的前驱结点 while(q!=NULL){ if(p->data > q->data){ r=s; /..

yyy_zxc的博客 3080

全网最详细的 Ubuntu 18.04 安装Livox mid-360驱动,测试 fast_lio2

Livox mid-360需要使用Livox-SDK2,而非Livox-SDK,以及对应的。并需要修改FAST_LIO中部分代码。Faster—LIO;Faster-LIO:快速激光IMU里程计。Faster-LIO:快速激光IMU里程计PDF。大部分Lidar SLAM都是基于loam进行改造的,基本上是通过线特征edge和面特征(面点)分割进行配准得到里程计的,而fast-lio2是通过一个迭代扩展卡尔曼滤波器去优化帧内位姿,然后通过输入点云与地图进行配准得到里程计,精度和鲁棒性都不错。

努力努力努力 6238

第二章.线性表(天勤算法题)

1. void insertElem(int A[],int m,int n) { int i,j; int temp; for(i=m;i<m+n;i++) { temp = A[i]; for(j=i-1;j>=0 && temp<A[j];--j) A[j+1]=A[j]; A[j+1]=temp; } }

qq_32863265的博客 790

使用字体解密技术爬取懂车帝二手车数据

本文介绍了一种针对懂车帝二手车平台的字体加密数据采集方案。通过抓包分析,识别出关键API接口并解析了字体加密机制,成功实现了价格等敏感数据的解密。方案采用requests库发送POST请求获取JSON数据,利用fontTools解析字体映射关系,建立加密字符到真实数字的转换算法。程序支持多页采集,提取车辆名称、价格、年份等12个维度的信息,并自动保存为Excel格式。技术亮点包括动态字体解析、健壮的数据处理和分页优化,为二手车市场分析提供了可靠的数据支持。文中特别强调数据采集的合法合规性,建议仅用于学术研究

那些看似不起波澜的日复一日,会在某天让你看到坚持的意义 1310

OpenClaw(Clawdbot/Moltbot)如何正确的配置浏览器,实现对浏览器的自动化操作功能(浏览器状态为running:false怎么办)

OpenClaw(Clawdbot/Moltbot)浏览器自动化功能无效?🤖 本文详细介绍如何解决这个问题🔧,让你的OpenClaw(Clawdbot/Moltbot)真正具备"睁眼看世界"的能力,支持网页搜索、点击操作和截图等功能 ✅

XiaoqiangClub的博客 8109

c语言程序改错

试卷编号:8311 所属语言:Turbo C 试卷方案:222 试卷总分:1390分 共有题型:1种     一、程序改错   共139题 (共计1390分) 第1题 (10.0分)  题号:351 /*------------------------------------------------------     【程序改错】 ---------------------

1363648943的专栏 1万+

硬核干货|C#+EtherCAT协议:高精度多轴伺服运动控制通信实战

本文摘要: 文章聚焦工业自动化领域多轴伺服运动控制的高精度与实时性需求,基于C#与EtherCAT协议实现完整解决方案。EtherCAT凭借微秒级同步、分布式架构等优势成为首选,而C#通过优化GC策略和实时线程可满足工业控制要求。文章从工程落地角度,详细拆解EtherCAT的PDO/SDO通信机制与多轴同步控制逻辑,提供完整的C#代码实现(主站初始化、伺服配置、运动控制等),所有代码均通过汇川/松下伺服实测验证。核心亮点包括:纯C#原生开发、工业现场高频问题解决方案、硬件适配指南,帮助开发者快速掌握高精度多

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 582

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

1.顺序表的结构体定义 //顺序表 typedef struct{ int data[maxsize]; int length; }SqList; //单链表 typedef struct{ int data; struct LNode *next; }LNode; //双链表 typedef struct DLNode { int data; struct DLNode *...

Mind_programmonkey的博客 531

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

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

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

weixin_43769323的博客 1041

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

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

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

weixin_46747075的博客 1447

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

【竞技宝】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

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

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

inscode_086的博客 782

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

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

前端岚枫 4156

首个口服 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、付费专栏及课程。

余额充值