0531作业 链表
结果
整体代码

主要实现
/**实现* */
#include "./linklist.h"linklist* create_linklist(datatype param){linklist* node=(linklist*)malloc(sizeof(linklist));if(NULL==node){puts("节点创建失败");}node->param=param;node->pnext=NULL;puts("结点创建成功");return node;
}
//头插
void insert_head_linklist(linklist* head,datatype param){linklist* newNode=(linklist*)create_linklist(param);newNode->pnext=head->pnext;head->pnext=newNode;head->param++;
}
//尾插
void insert_last_linklist(linklist* head,datatype param){linklist* newNode=(linklist*)create_linklist(param);linklist* p=head;while(NULL!=p->pnext){p=p->pnext;}p->pnext=newNode;newNode->pnext=NULL;head->param++;
}//遍历
void foreach_linklist(linklist* head){ linklist* p=head;puts("-------遍历-------");printf("链表总长度:");while(NULL!=p->pnext){printf("%d \n",p->param);p=p->pnext;}printf("%d \n",p->param);puts("-----------------");}//卸载堆空间
void free_null(linklist** node){printf("正在卸载%d的堆空间\n",(*node)->param);free(*node);*node=NULL;puts("已卸载堆空间");
}
//尾删
void delete_last_linklist(linklist* head){if(head == NULL || head->pnext == NULL){puts("链表为空或只有头结点");return;}linklist* p=head;while(NULL!=p->pnext->pnext){p=p->pnext;}free_null(&(p->pnext));head->param--;puts("尾删成功");
}
//头删
void delete_head_linklist(linklist* head){if(head == NULL || head->pnext == NULL){puts("链表为空或只有头结点");return;}linklist* temp=head->pnext;head->pnext=head->pnext->pnext;free_null(&temp);head->param--;puts("头删成功");
}void insert_index_linklist(linklist *head, int index, datatype num)
{if(index > head->param+1 || index <= 0){return;}linklist *p = head;for(int i=0; i<index-1; i++){p = p->pnext;}linklist *temp = (linklist*)malloc(sizeof(linklist));temp->param = num;temp->pnext = p->pnext;p->pnext = temp;head->param++;puts("按位插入成功");
}
//指定位置删除节点
void delete_index_linklist(linklist *head, int index)
{if(NULL == head->pnext || NULL == head || index > head->param+1 || index <= 0){ return;}linklist *p = head;for(int i=0; i<index-1; i++){p = p->pnext;}linklist *temp = (linklist*)malloc(sizeof(linklist));temp = p->pnext;p->pnext = temp->pnext;free_null(&temp);head->param--;puts("按位删除成功");
}
相关文章:
0531作业 链表
结果 整体代码 主要实现 /**实现* */ #include "./linklist.h"linklist* create_linklist(datatype param){linklist* node(linklist*)malloc(sizeof(linklist));if(NULLnode){puts("节点创建失败");}node->paramparam;node->pnextNULL;puts("…...
C++ STL - 容器
C STL(标准模板库)中的容器是一组通用的、可复用的数据结构,用于存储和管理不同类型的数据。 目录 零. 简介: 一 . vector(动态数组) 二. list(双向链表) 三. deque(…...
AI生成沉浸式3D世界(空间照片/视频)
面向Vision Pro等空间计算设备的产品指南 & 技术实现路径 一、通俗理解 ldi3格式概览:这是一种创新的3D内容格式,专为Vision Pro、Quest等VR头戴设备设计,让你能沉浸在一个几可乱真的三维世界,体验仿佛亲临其境的感受。 内容创作:利用开源工具,结合多角度摄像捕捉,…...
【Vue】异步更新 $nextTick
文章目录 一、引出问题二、解决方案三、代码实现 一、引出问题 需求 编辑标题, 编辑框自动聚焦 点击编辑,显示编辑框让编辑框,立刻获取焦点 即下图上面结构隐藏,下面结构显示,并且显示的时候让它自动聚焦。 代码如下 问题 “…...
【uCOS-III-编程指南】
uCOS-III-编程指南 ■ [野火]uCOS-III内核实现与应用开发实战指南■■■■ ■ [野火]uCOS-III内核实现与应用开发实战指南 添加链接描述 ■ ■ ■ ■...
2004NOIP普及组真题 2. 花生采摘
线上OJ: 【04NOIP普及组】花生采摘 核心思想: 1、本题为贪心即可。 2、因为本题严格限制了顺序,所以先把每个节点的花生数量按降序排序。然后逐一判断下一个花生是否需要去采摘即可 3、每一次采摘完,记录耗时 t 以及采集的花…...
SAP-SD-21-定义用于定价补充的定价过程
图9 维护条件类型...
Android AAudio——C API创建AudioTrack(六)
虽然 AAudio 试图提供一种直接的硬件访问途径,但在某些场景下,如处理兼容性问题、使用系统服务(如 AudioFlinger)或者在某些设备上,使用 AudioTrack 可能是最有效或最合适的途径。这并不违背 AAudio 的初衷,因为它的目标是提供高性能的音频处理,而不是避免使用系统服务。…...
实验七、创建小型实验拓扑《计算机网络》
早检到底是谁发明出来的。 一、实验目的 完成本实验后,您将能够: • 设计逻辑网络。 • 配置物理实验拓扑。 • 配置 LAN 逻辑拓扑。 • 验证 LAN 连通性。 二、实验任务 在本实验中,将要求您连接网络设备并配置主机实现基本的网络…...
SqlServer2016企业版安装
前言 好久没有知识的累积,最近工作上遇到新的SqlServer2016安装,记录一下 参考文章 SQL Server 2016软件安装包和安装教程 - 哔哩哔哩 (bilibili.com) 安装包准备 需要提前准备软件安装包如下 cn_sql_server_2016_enterprise_x64_dvd_8699450&…...
HBase数据库面试知识点:第一部分 - 基础概念与特点(持续更新中)
目录 一、HBase基础概念 1. HBase定义 2. 核心组件 3. HBase的特点 二、HBase与传统RDBMS的区别 1. 数据类型 2. 数据操作 3. 存储方式 4. 伸缩性 5. 事务性 三、HBase数据模型 四、HBase的特点 五、HBase与Hadoop生态系统的关系 一、HBase基础概念 1. HBase定义 …...
一个高效的go语言字符串转驼峰命名算法实现函数
在go语言的开发中我们经常需要对各种命名进行规范, 今天给大家介绍的是一个高效的将字符串转 驼峰命名 (即 首字母大写的命名方式)的函数。 // 字符串转驼峰命名 // author tekintian <tekintiangmail.com> func CamelStr(str string) …...
Python中__init__方法的魔力:构建对象的基石
Python中__init__方法的魔力:构建对象的基石 在Python的世界中,__init__方法是一个特殊的存在。它不仅是类的构造函数,更是对象生命周期的起点。通过__init__方法,我们可以初始化对象的状态,设置属性,甚至…...
Appium安装及配置(Windows环境)
在做app相关自动化测试,需要使用appium来做中转操作,下面来介绍一下appium的环境安装配置 appium官方文档:欢迎 - Appium Documentation 一、下载appium 下载地址:https://github.com/appium/appium-desktop/releases?page3 通…...
CANOE制造dll文件,以及应用dll文件
1、使用canoe自带的capl dll 2、然后使用Visual Studio 2022 打开项目 3、项目打开后修改下项目属性 4、修改capldll.cpp文件 4.1 添加的内容 void CAPLEXPORT far CAPLPASCAL appSum(long i, long j, long* s){*s i j;} {"sum", (CAPL_FARCALL)appSum, "…...
C++结合OpenCV进行图像处理与分类
⭐️我叫忆_恒心,一名喜欢书写博客的在读研究生👨🎓。 如果觉得本文能帮到您,麻烦点个赞👍呗! 近期会不断在专栏里进行更新讲解博客~~~ 有什么问题的小伙伴 欢迎留言提问欧,喜欢的小伙伴给个三…...
Master-Worker 架构的灰度发布难题
作者:石超 一、前言 Master-Worker 架构是成熟的分布式系统设计模式,具有集中控制、资源利用率高、容错简单等优点。我们数据中心内的几乎所有分布式系统都采用了这样的架构。  我们曾经发生过级联故障,造成了整个集群范围的服…...
钢基础知识介绍
钢铁是一种铁碳合金,含有一定量的碳和其他合金元素,如硅、锰等。而钢材则是经过加工处理后的钢铁材料,具有更高的强度、硬度、塑性和韧性。钢铁的硬度、强度和耐磨性相对较低,而钢材经过加工处理后,其硬度、强度和耐磨…...
linux 系统监控脚本
1.对CPU的监控函数 function GetCpu(){cpu_numgrep -c "model name" /proc/cpuinfocpu_usertop -b -n 1 | grep Cpu | awk {print $2} | cut -f 1 -d "%"cpu_systemtop -b -n 1 | grep Cpu | awk {print $4} | cut -f 1 -d "%"cpu_idletop -b -…...
K8s Pod的QoS类
文章目录 OverviewPod的QoS分类Guaranteed1.如何将 Pod 设置为保证Guaranteed2. Kubernetes 调度器如何管理Guaranteed类的Pod Burstable1. 如何将 Pod 设置为Burstable2.b. Kubernetes 调度程序如何管理 Burstable Pod BestEffort1. 如何将 Pod 设置为 BestEffort2. Kubernete…...
seo网上教程有哪些常见错误
SEO网上教程有哪些常见错误 在互联网时代,SEO(搜索引擎优化)已经成为网站流量和排名提升的关键因素。很多人在学习SEO过程中,常常会遇到一些误区,甚至在网上找到的一些教程中也包含了不少错误。本文将详细介绍一些常见…...
保姆级教程:在Win10上用VMware给Ubuntu虚拟机配置共享文件夹(含重启失效解决方案)
VMware虚拟机共享文件夹配置全指南:从基础配置到疑难解决 在Windows 10主机上使用VMware运行Ubuntu虚拟机进行开发时,共享文件夹功能是提高工作效率的关键。本文将详细介绍如何从零开始配置共享文件夹,并解决常见的"安装按钮灰色"、…...
OpenClaw+千问3.5-9B自动化写作:技术博客大纲与初稿生成
OpenClaw千问3.5-9B自动化写作:技术博客大纲与初稿生成 1. 为什么需要自动化写作助手 作为一个技术博主,我经常面临这样的困境:明明对某个技术点有深刻理解,却卡在如何组织文章结构上。有时候花在列大纲上的时间比实际写作还长&…...
第三次学习C语言有感
我是一名大一学生,学习的专业是自动化,报专业时想着的是自动化可以走的方面是很广的,想着大学里面可以多多尝试不一样东西看自己对哪一样感兴趣。说实话,因为我对单片机感兴趣才驱使我学习C语言的,虽然嘴上说的是C语言…...
LLMKG+ 知识图谱改进实战指南(非常详细),大模型提升质量与覆盖从入门到精通,收藏这一篇就够了!
LLMKG+: Systematically improving knowledge quality and coverage in KGs using LLMs – A case study in medical domain 摘要 本文提出了LLMKG框架,首次系统性地解决了知识图谱中三元组级别的语义冗余问题。该框架结合检索增强生成与分层扩展过滤机…...
保姆级教程:在Quartus Prime 18.0中手把手配置NCO IP核并完成Modelsim仿真
保姆级教程:在Quartus Prime 18.0中手把手配置NCO IP核并完成Modelsim仿真 数字信号处理是FPGA开发中的核心技能之一,而数控振荡器(NCO)作为生成精确频率信号的关键IP核,在通信系统、雷达信号处理等领域有着广泛应用。…...
房屋租赁管理系统开发教程:基于SSM框架实战全记录
房屋租赁管理系统 java项目ssm框架开发,全套视频教程Verio 房屋租赁系统“我的收藏”功能深度解析——从用户点击到数据落地的全流程设计一、业务定位在房屋租赁平台中,“收藏”是连接「浏览」与「决策」的关键节点。Verio 把收藏做成一个轻量级、可复用的“微服务”…...
新手怎么安装OpenClaw?2026年新手10分钟部署OpenClaw及百炼APIKey配置指南
新手怎么安装OpenClaw?2026年新手10分钟部署OpenClaw及百炼APIKey配置指南。OpenClaw(原Clawdbot)作为2026年主流的AI自动化助理平台,可通过阿里云轻量服务器实现724小时稳定运行,并快速接入钉钉,让AI在企业…...
Linux内核中的锁机制对比:选择合适的同步原语
Linux内核中的锁机制对比:选择合适的同步原语 作为一名深耕操作系统和嵌入式开发的工程师,我对Linux内核中的各种锁机制有着深入的理解。不同的锁适用于不同的场景,选择合适的锁对于系统性能至关重要。 内核锁的类型 1. 互斥锁(Mu…...
航拍遥感飞机数据集 Yolo格式标注另附上3840*2160超高分辨率原图下小目标检测效果示意图更多见主页
航拍遥感飞机数据集 Yolo格式标注 另附上3840*2160超高分辨率原图下小目标检测效果示意图 更多见主页...
