【考研数据结构代码题2】删除单链表倒数第n个结点

news2024/11/25 12:59:39

题目:删除单链表倒数第n个结点

难度:

算法思路: 首先题目没有指明链表的长度,多以首先需要编写一个函数getLength()来求表长,其次删除倒数第n个结点,即删除正数第length-n+1个结点,这是二者之间的关系,可以通过找规律归纳得到,删除单链表中某结点关键是找到该结点的前一个结点,修改指针域即可,最后释放掉被删结点所占内存,如下图所示:

//链表结点结构 
typedef struct ListNode{
	int val;//数据域 
	struct ListNode *next;//指针域 
}ListNode;

//获取链表的结点数,即表长
int getLength(ListNode* head){
	int length=0;
	ListNode *p=head;//游标指针 
	while(p->next){
		length++; 
		p=p->next;//移动到 下一个结点处 
	}
	return length;
} 
//删除链表倒数第n个结点
ListNode *deleteNode(ListNode* head,int n){
	int length=getLength(head);//先获取表长 
	ListNode *p=head;//游标指针 
	ListNode *temp=NULL;//临时指针
	//循环找到需要删除结点的前一个结点,修改相关指针域
	 for(int i=0;i<length-n;i++){
	 	p=p->next;
	 }
	 temp=p->next;//保存待删结点 
	 p->next=p->next->next;//逻辑删除
	 free(temp);//释放结点所占内存,物理删除 
	 return head; 
} 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1167600.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

章鱼网络进展月报 | 2023.10.1-10.31

章鱼网络大事摘要 1、Louis 成功竞选 NDC 的 HoM 议席&#xff0c;将会尽最大努力推动 NEAR 变革。2、章鱼网络受邀参加在土耳其主办的 Cosmoverse2023&#xff0c;分享 Adaptive IBC 的技术架构。3、2023年10月8日章鱼日&#xff0c;是章鱼网络主网上线2周年的纪念日。 …

WebDAV之π-Disk派盘 + Smart File Manager

推荐一款超级文件管理器手机版。不仅可以自建热点分享,还可以用电脑查看和下载手机上的文件,支持连接云盘服务。 Smart File Manager是一款简洁、强大、小巧完美的文件管理应用程序,它能自动识别用户内部存储器中所有的文件信息,包括音乐、视频、图片、APK、下载、文件、压…

【计算机网络】数据链路层——以太网协议

目录 1.完整的数据传输流程2.以太网以太网通信原理以太网帧格式MAC地址对比MAC地址和IP地址MTU 3.ARP协议ARP协议的作用ARP协议的格式ARP协议的原理 1.完整的数据传输流程 IP拥有将数据跨网络从一台主机送到另一台主机的能力&#xff0c;但IP并不能保证每次都能够将数据可靠的送…

欧洲爆火的Vinted是什么平台?值得入驻吗?如何入驻?

近年来&#xff0c;Vinted已经成为欧洲最受欢迎的在线二手服装买卖市场之一。该平台因其用户友好的界面、丰富的商品选择以及在用户之间创建的社区感而备受关注。在本文中&#xff0c;我们将更详细地了解Vinted的运作方式以及您开始出售商品需要知道的内容。 一、什么是Vinted&…

[动态规划] (四) LeetCode 91.解码方法

[动态规划] (四) LeetCode 91.解码方法 91. 解码方法 题目解析 (1) 对字母A - Z进行编码1-26 (2)11106可以解码为1-1-10-6或者11-10-6, 但是11-1-06不能解码 (3) 0n不能解码 (4) 字符串非空&#xff0c;返回解码方法的总数 解题思路 状态表示 dp[i]&#xff1a;以i为结…

接口自动化测试难点:数据库验证解决方案 百分之90人不知道

接口自动化中的数据库验证&#xff1a;确保数据的一致性和准确性 接口自动化测试是现代软件开发中不可或缺的一环&#xff0c;而数据库验证则是确保接口返回数据与数据库中的数据一致性的重要步骤。本文将介绍接口自动化中的数据库验证的原理、步骤以及示例代码&#xff0c;帮…

蓝桥杯:买不到的数目

对于两个互质的正整数 n , m n,m n,m,请找出来不能被 n n n和 m m m组成的最大数 X X X 例如:对于4,7那么 X X X17&#xff0c;因为对于大于17的任一数都可由4和7组成。 重新翻译题目&#xff1a; 对于任一大于 X X X的正整数 Y Y Y满足 Y a n b m Y a \times nb \times m …

Java自学第1课:安装JDK+Eclipse

1 引言 在学习前&#xff0c;我想说一句&#xff0c;那就是为什么要学习Java。 每个人的出发点都不同&#xff0c;对于做信息化的工程技术人员来说&#xff0c;java不懂&#xff0c;就没法干项目。 尽管有c和matlab等基础&#xff0c;但java看起来与这些语言都不太一样。 做…

大语言模型?生成式AI?分不清楚的话可以看aws这个例子

大语言模型和生成式AI有什么紧密联系呢&#xff1f;为什么大语言模型近期受到如此大的关注呢&#xff1f;当提到大语言模型&#xff0c;大家可能首先会想到像ChatGPT这样的自然语言处理工具。那么大语言模型究竟是什么&#xff1f;它和生成式AI又存在怎样的关系呢&#xff1f;接…

c++获取和设置环境变量

这个功能非常常用&#xff0c;但是容易忘记&#xff0c;这里做个记录。 注意&#xff0c;设置的环境变量只在当前进程中生效&#xff0c;所以在电脑中的环境变量设置区域看不到。 std::string env getenv("PATH");env "X:\\envtest";std::string newEnv…

【Midjourney入门教程3】写好prompt常用的参数

文章目录 1、图片描述词&#xff08;图片链接&#xff09;文字描述词后缀参数2、权重划分3、后缀参数版本选择&#xff1a;--v版本风格&#xff1a;--style长宽比&#xff1a;--ar多样性: --c二次元化&#xff1a;--niji排除内容&#xff1a;--no--stylize--seed--tile、--q 4、…

AD1255/AD1256硬件SPI开发实战与跳坑过程

AD1255/AD1256硬件SPI开发实战与跳坑过程 以上图片我们可以知道在t17阶段&#xff0c;数据是不能被读取的。另外最小是16个τCLKIN&#xff0c;具体是多少这个跟你配置的DATA_rate的设置有关系。 1.6 同步SYNC的时序 要同步SYNC&#xff0c;要么采用管脚SYNC&#xff0c;要么…

Android 复杂UI界面分模块解耦的一次实践

一、复杂UI页面开发的问题 常见的比较复杂的UI界面&#xff0c;比如电商首页&#xff0c;我们看看某电商的首页部分UI&#xff1a; 上面是截取的首页部分&#xff0c;如果这个首页如果不分模块开发会遇到哪些问题&#xff1f; 开发任务不方便分割&#xff0c;一个人开发的话周…

毅速丨3D打印结合拓扑优化让轻量化制造更容易

轻量化可以减少产品的重量&#xff0c;提高产品的性能和效率&#xff0c;同时减少能源消耗和排放。尤其在航空航天、汽车制造造等行业对轻量化追求更高。当前&#xff0c;随着制造技术的发展&#xff0c;拓扑优化结合3D打印为轻量化制造带来的显著的优势正在逐渐凸显。 首先&am…

寻找更好的发展机会

一个员工离开一家公司的原因无外乎下面几个原因&#xff1a; 第一&#xff0c;对薪资不满意。 第二&#xff0c;在公司没前途。 第三&#xff0c;工作干的不爽。 从题主的叙述来看&#xff0c;上面三条都被题主占全了。 第一条&#xff0c;题主从日本母公司回国后&#xf…

数据库概述 -- 数据模型知识点要点详解

数据模型 概述概念数据特征组成要素分类概念层数据模型逻辑层数据模型物理层数据模型 主页传送门&#xff1a;&#x1f4c0; 传送 概述 数据模型是对现实世界数据特征的抽象&#xff0c;它描述了数据的结构、操作和约束条件&#xff0c;为数据库系统的信息表示与操作提供一个抽…

【文生图】Stable Diffusion XL 1.0模型Full Fine-tuning指南(U-Net全参微调)

文章目录 前言重要教程链接以海报生成微调为例总体流程数据获取POSTER-TEXTAutoPosterCGL-DatasetPKU PosterLayoutPosterT80KMovie & TV Series & Anime Posters 数据清洗与标注模型训练模型评估生成图片样例宠物包商品海报护肤精华商品海报 一些TipsMata&#xff1a;…

第6章_多表查询

文章目录 多表查询概述1 一个案例引发的多表连接1.1 案例说明1.2 笛卡尔积理解演示代码 2 多表查询分类讲解2.1 等值连接 & 非等值连接2.1.1 等值连接2.1.2 非等值连接 自连接 & 非自连接内连接与外连接演示代码 3 SQL99语法实现多表查询3.1 基本语法3.2 内连接&#x…

kubernetes集群编排——service微服务

service微服务 创建测试示例 vim myapp.yml apiVersion: apps/v1kind: Deploymentmetadata:labels:app: myappname: myappspec:replicas: 6selector:matchLabels:app: myapptemplate:metadata:labels:app: myappspec:containers:- image: myapp:v1name: myapp---apiVersion: v1…