复习单向,双向链表,并且实现两种链表的增加和删除功能。
单链表头插
Linklist insert_head(datatype element,Linklist head)
{//创建新节点
Linklist s=create_node();if(NULL==s)return head;
s->data=element;//1,判断链表为空if(NULL==head){head=s;}else //链表不为空{s->next=head;head=s;}return head;
}
单链表尾插
Linklist insert_rear(datatype element,Linklist head)
{
//创建新节点sLinklist s=create_node();if(NULL==s)return head;s->data=element;//1,判断链表为空if(NULL ==head){head=s;}else //链表不为空{//1,循环到最后一个节点Linklist p=head;while(p->next!=NULL){p=p->next;}//2,在p后面插入sp->next=s;}return head;}
单链表头删
Linklist delete_head(Linklist head)
{//1,判断链表为空if(NULL==head){return head;}else //链表存在1个或多个节点{Linklist del=head;head=head->next;free(del);del=NULL;}return head;
}
单链表尾删
Linklist delete_rear(Linklist head)
{//1,判断链表为空if(NULL ==head)return head;//2,判断链表只有一个节点if(NULL ==head->next){free(head);head=NULL;}else //存在多个节点>=2{//3.找到倒数第2个节点Linklist del=head;while(del->next->next!=NULL){del=del->next;}//4.删除del->nextfree(del->next);del->next=NULL;}return head;
}
双向链表节点头插
Doublelink double_insert_head(datatype element,Doublelink head)
{//创建新节点sDoublelink s=create_node();if(s==NULL)return head;strcpy(s->data,element);//1.判断链表为空if(NULL ==head)head=s;//2.存在多个节点>=1else{s->next=head;head->priv=s;head=s;}return head;
}
双向链表节点尾插
Doublelink doublelink_insert_rear(datatype element,Doublelink head)
{//创建新节点sDoublelink s=create_node();if(s==NULL)return head;strcpy(s->data,element);//1,没有节点if(NULL ==head)head=s;else{//找到最后一个节点Doublelink p=head;while(p->next!=NULL){p=p->next;}//插入sp->next=s;s->priv=p;}return head;}
双向链表节点头删
Doublelink delete_head(Doublelink head)
{//1,判断链表为空if(NULL==head)return head;//2,存在多个节点Doublelink q=head;head=head->next;if(head!=NULL)head->priv=NULL;free(q);q=NULL;return head;
}
双向链表节点尾删
Doublelink delete_rear(Doublelink head)
{//1,判断链表为空if(NULL ==head)return head;//2,只有一个节点if(head->next==NULL){free(head);head=NULL;}else //>=2{//找到最后一个节点Doublelink p=head;while(p->next!=NULL){p=p->next;}p->priv->next=NULL;free(p);p=NULL;}return head;
}
相关文章:
复习单向,双向链表,并且实现两种链表的增加和删除功能。
单链表头插 Linklist insert_head(datatype element,Linklist head) {//创建新节点 Linklist screate_node();if(NULLs)return head; s->dataelement;//1,判断链表为空if(NULLhead){heads;}else //链表不为空{s->nexthead;heads;}return head; } 单链表尾插 Linklist …...
【webpack】技巧使用
webpack和TypeScript 安装webpack相关内容安装TS相关内容配置初始化数据初始化运行展示和目录展示报错解决(缺失文件配置) 安装前端必备神奇lodash测试一下entry配置index.html模板配置修改打包出来的index.html的titleinject注入chunks 属性多页面配置 …...
windows 谷歌浏览器Chrome 怎么禁止更新
1.首先把任务管理器里的谷歌浏览器程序结束: (鼠标在任务栏右击,出现任务管理器) 2.windowr,输入services.msc 带有Google Update的服务,选择禁用。 3.windowr,输入taskschd.msc 任务计划程序…...
力扣(leetcode)第349题两个数组的交集(Python)
349.两个数组的交集 题目链接:349.两个数组的交集 给定两个数组 nums1 和 nums2 ,返回 它们的交集 。输出结果中的每个元素一定是 唯一 的。我们可以 不考虑输出结果的顺序 。 示例 1: 输入:nums1 [1,2,2,1], nums2 [2,2] 输出…...
python Flask 写一个简易的 web 端程序(附demo)
python Flask 写一个简易的 web 端程序 (附demo) 介绍简单介绍装饰器 app.route("/") 进阶增加接口设置端口 静态网页核心代码完整代码 介绍 Flask 是一个用于构建 Web 应用程序的轻量级 Python Web 框架。它设计简单、易于学习和使用&#x…...
mysql问题
面试官:MySQL中,如何定位慢查询? 候选人: 嗯~,我们当时做压测的时候有的接口非常的慢,接口的响应时间超过了2秒以上,因为我们当时的系统部署了运维的监控系统Skywalking ,在展示的报表中可以看…...
iframe通信,window.postMessage父子项目数据通信
父 > 子 父项目 <iframe:src"cockpitUrl"id"cockpitIframe"load"handleLoad" ></iframe>// 向子系统传递数据(注意要再iframe的load中注册,保证iframe已经加载完成,这样子项目才能监听到&…...
ES6中新增Array.from()函数的用法详解
目录 Map对象的转换 Set对象的转换 字符串的转换 类数组对象的转换 Array.from可以接受三个参数 ES6为Array增加了from函数用来将其他对象转换成数组。当然,其他对象也是有要求,也不是所有的,可以将两种对象转换成数组。 1、部署了Iter…...
Camera2+OpenGL ES+MediaCodec+AudioRecord实现录制音视频写入H264 SEI数据
记录一下学习过程,得到一个需求是基于Camera2OpenGL ESMediaCodecAudioRecord实现录制音视频。 需求: 在每一帧视频数据中,写入SEI额外数据,方便后期解码时获得每一帧中的自定义数据。点击录制功能后,录制的是前N秒至…...
C语言笔试题之反转链表(头插法)
实例要求: 1、给定单链表的头节点 head ;2、请反转链表;3、最后返回反转后的链表; 案例展示: 实例分析: 1、入参合理性检查,即head ! NULL || head->next ! NULL;2、while循环…...
WEB3:互联网发展的新时代
随着科技的飞速发展,互联网已从最初的信息交流平台发展为涵盖了工作、生活、娱乐、教育等众多领域的复杂系统。我们将其称之为“WEB3”,这个名称是对互联网新时代的高度概括,标志着我们已经迈入了WEB3时代。 在WEB3时代,互联网将…...
c语言:贪吃蛇的实现
目录 贪吃蛇实现的技术前提: Win32 API介绍 控制台程序(console) 控制台屏幕上的坐标 GetStdHandle GetConsoleCursorInfo CONSOLE_CURSOR_INFO SetConsoleCursorInfo SetConsoleCursorPosition GetAsyncKeyState 宽字符的打印 …...
第5课 使用FFmpeg将rtmp流再转推到rtmp服务器
本课对应源文件下载链接: https://download.csdn.net/download/XiBuQiuChong/88801992 通过前面的学习,我们已经可以正常播放网络rtmp流及本地mp4文件。这节课,我们将在前面的基础上实现一个常用的转推功能:读取rtmp流或mp4文件并…...
Vue中v-if和v-show区别
Vue中v-if和v-show是两个常用的指令,用于控制元素的显示和隐藏。虽然它们都能达到相同的效果,但在实现机制和使用场景上有一些区别。本文将详细介绍v-if和v-show的区别,并且通过示例代码来演示它们的使用。 首先,让我们来看一下v…...
LabVIEW与EtherCAT实现风洞安全联锁及状态监测
LabVIEW与EtherCAT实现风洞安全联锁及状态监测 在现代风洞试验中,安全联锁与状态监测系统发挥着至关重要的作用,确保了试验过程的安全性与高效性。介绍了一套基于EtherCAT总线技术和LabVIEW软件开发的风洞安全联锁及状态监测系统。该系统通过实时、可靠…...
PostgreSQL的wal文件回收问题
引子 将PostgreSQL的GUC参数wal_recycle设置为on,然后对数据库执行一定业务量的操作,会发现在pg_wal目录下,有很多未来使用的wal文件,且创建时间比现在正在使用的wal文件更早,下文将描述和分析这种情况。 问题描述 …...
java-JUC并发编程学习笔记05(尚硅谷)
我们写一段测试代码: 会出现线程不安全的问题。 使用Vector解决线程不安全问题: 但是这个类几乎不会被使用了,因为效率太低。 方法二:通过Collections解决: 但是这种方案实际中也不太会使用。 我们还有第三种方法使用CopyOnWri…...
vulhub中spring的CVE-2022-22947漏洞复现
Spring Cloud Gateway是Spring中的一个API网关。其3.1.0及3.0.6版本(包含)以前存在一处SpEL表达式注入漏洞,当攻击者可以访问Actuator API的情况下,将可以利用该漏洞执行任意命令。 参考链接: https://tanzu.vmware.c…...
网络原理TCP/IP(1)
文章目录 端口号UDP协议 在网络通信中,协议非常重要 协议进行了分层 应用层就是对应着应用程序,是程序员打交道最多的这一层,调用系统提供的网络api写出来的代码都是属于应用层的 应用层有很多现成的协议,但是更多的还是程序员需要…...
EasyExcel使用,实体导入导出
简介 Java解析、生成Excel比较有名的框架有Apache poi、jxl。但他们都存在一个严重的问题就是非常的耗内存,poi有一套SAX模式的API可以一定程度的解决一些内存溢出的问题,但POI还是有一些缺陷,比如07版Excel解压缩以及解压后存储都是在内存中…...
SpringBoot-17-MyBatis动态SQL标签之常用标签
文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…...
Appium+python自动化(十六)- ADB命令
简介 Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具,其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利,如安装和调试…...
练习(含atoi的模拟实现,自定义类型等练习)
一、结构体大小的计算及位段 (结构体大小计算及位段 详解请看:自定义类型:结构体进阶-CSDN博客) 1.在32位系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是多少? #pragma pack(4)st…...
java 实现excel文件转pdf | 无水印 | 无限制
文章目录 目录 文章目录 前言 1.项目远程仓库配置 2.pom文件引入相关依赖 3.代码破解 二、Excel转PDF 1.代码实现 2.Aspose.License.xml 授权文件 总结 前言 java处理excel转pdf一直没找到什么好用的免费jar包工具,自己手写的难度,恐怕高级程序员花费一年的事件,也…...
AtCoder 第409场初级竞赛 A~E题解
A Conflict 【题目链接】 原题链接:A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串,只有在同时为 o 时输出 Yes 并结束程序,否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...
虚拟电厂发展三大趋势:市场化、技术主导、车网互联
市场化:从政策驱动到多元盈利 政策全面赋能 2025年4月,国家发改委、能源局发布《关于加快推进虚拟电厂发展的指导意见》,首次明确虚拟电厂为“独立市场主体”,提出硬性目标:2027年全国调节能力≥2000万千瓦࿰…...
解析两阶段提交与三阶段提交的核心差异及MySQL实现方案
引言 在分布式系统的事务处理中,如何保障跨节点数据操作的一致性始终是核心挑战。经典的两阶段提交协议(2PC)通过准备阶段与提交阶段的协调机制,以同步决策模式确保事务原子性。其改进版本三阶段提交协议(3PC…...
sshd代码修改banner
sshd服务连接之后会收到字符串: SSH-2.0-OpenSSH_9.5 容易被hacker识别此服务为sshd服务。 是否可以通过修改此banner达到让人无法识别此服务的目的呢? 不能。因为这是写的SSH的协议中的。 也就是协议规定了banner必须这么写。 SSH- 开头,…...
【实施指南】Android客户端HTTPS双向认证实施指南
🔐 一、所需准备材料 证书文件(6类核心文件) 类型 格式 作用 Android端要求 CA根证书 .crt/.pem 验证服务器/客户端证书合法性 需预置到Android信任库 服务器证书 .crt 服务器身份证明 客户端需持有以验证服务器 客户端证书 .crt 客户端身份…...
Xcode 16 集成 cocoapods 报错
基于 Xcode 16 新建工程项目,集成 cocoapods 执行 pod init 报错 ### Error RuntimeError - PBXGroup attempted to initialize an object with unknown ISA PBXFileSystemSynchronizedRootGroup from attributes: {"isa">"PBXFileSystemSynchro…...
