当前位置: 首页 > news >正文

C++数据结构

单向链表

//
// Created by 19342 on 2024/9/14.
//
#include <iostream>
using namespace std;// 定义链表节点
struct Node {int data; // 节点存储的数据Node* next; // 指向下一个节点的指针
};// 初始化链表
Node* initList() {return nullptr;
}// 在链表末尾添加一个新节点
void append(Node*& head, int value) {Node* newNode = new Node();newNode->data = value;newNode->next = nullptr;if (head == nullptr) { // 如果链表为空head = newNode;} else {Node* temp = head;while (temp->next != nullptr) { // 移动到链表的最后一个节点temp = temp->next;}temp->next = newNode; // 将新节点附加到最后}
}// 打印链表的所有元素
void printList(const Node* head) {const Node* temp = head;while (temp != nullptr) {cout << temp->data << " ";temp = temp->next;}cout << endl;
}int main() {Node* head = initList(); // 创建空链表// 向链表中添加一些元素append(head, 1);append(head, 2);append(head, 3);// 打印链表printList(head); // 输出应该是: 1 2 3// 清理内存while (head != nullptr) {Node* temp = head;head = head->next;delete temp; // 释放每个节点占用的内存}return 0;
}

为了防止内存泄漏,我们在主函数中释放了链表中每个节点所分配的内存。

相关文章:

C++数据结构

单向链表 // // Created by 19342 on 2024/9/14. // #include <iostream> using namespace std;// 定义链表节点 struct Node {int data; // 节点存储的数据Node* next; // 指向下一个节点的指针 };// 初始化链表 Node* initList() {return nullptr; }// 在链表末尾添加…...

Linux下read函数详解

在Linux中&#xff0c;read 函数是最常用的系统调用之一&#xff0c;用于从文件或其他输入设备读取数据。它是低级别的I/O操作的核心&#xff0c;直接与操作系统的内核交互&#xff0c;提供了高效的数据读取方式。 一、read 函数简介 read 函数的声明如下&#xff1a; #inclu…...

【二叉树遍历算法应用】------补录

0.二叉树结点的链式存储结构 #include<stdio.h> #include<stdlib.h> #include<stdbool.h>typedef char TElemType;//树中元素基本类型为char类型//二叉树结点链式存储结构&#xff08;二叉链表&#xff09; typedef struct BiNode {TElemType data;//数据域…...

AtCoder Beginner Contest 368

A.Cut&#xff08;模拟&#xff09; 题意&#xff1a; 有一叠 N N N张扑克牌&#xff0c;最上面的 i i i张扑克牌上写着一个整数 A _ i A\_i A_i。 你从牌堆底部取出 K K K张牌&#xff0c;将它们放在牌堆顶部&#xff0c;并保持它们的顺序。 操作后从上到下输出写在卡…...

WebGL系列教程六(纹理映射与立方体贴图)

目录 1 前言2 思考题3 纹理映射介绍4 怎么映射&#xff1f;5 开始绘制5.1 声明顶点着色器和片元着色器5.2 修改顶点的颜色为纹理坐标5.3 指定顶点位置和纹理坐标的值5.4 获取图片成功后进行绘制5.5 效果5.6 完整代码 6 总结 1 前言 上一讲我们讲了如何使用索引绘制彩色立方体&a…...

为什么nii.gz转.nrrd标签体积变大?

import SimpleITK as sitk # nii nii.gz nrrd格式之间互相转换 def nii2nii(oripath, savepath):data sitk.ReadImage(oripath)img sitk.GetArrayFromImage(data)out sitk.GetImageFromArray(img)sitk.WriteImage(out, savepath)if __name__ __main__:oripath 00292625.ni…...

软件安装攻略:EmEditor编辑器下载安装与使用

EmEditor是一款在Windows平台上运行的文字编辑程序。EmEditor以运作轻巧、敏捷而又功能强大、丰富著称&#xff0c;得到许多用户的好评。Windows内建的记事本程式由于功能太过单薄&#xff0c;所以有不少用户直接以EmEditor取代&#xff0c;emeditor是一个跨平台的文本编辑器&a…...

Redis的watch机制详解

WATCH 是 Redis 提供的一个用于实现 乐观锁 (Optimistic Lock) 的命令&#xff0c;通常用于实现事务中的并发控制。它允许客户端监控一个或多个键的变化&#xff0c;并确保事务&#xff08;MULTI/EXEC&#xff09;中执行的操作在这些键没有发生改变的情况下才能成功提交。若在事…...

UnrealEngine 打包Android平台应用

虚幻引擎 支持将项目发布到 安卓&#xff08;Android&#xff09; 移动设备上&#xff0c;并且提供了若干功能帮你将项目发布到 谷歌游戏商店。本节包含了如何设置Android开发环境、如何使用Android功能和服务、以及如何为发布游戏做准备相关的指南。 当前SDK要求 当前UE版本…...

Linux:git

hello&#xff0c;各位小伙伴&#xff0c;本篇文章跟大家一起学习《Linux&#xff1a;git》&#xff0c;感谢大家对我上一篇的支持&#xff0c;如有什么问题&#xff0c;还请多多指教 &#xff01; 如果本篇文章对你有帮助&#xff0c;还请各位点点赞&#xff01;&#xff01;&…...

electron有关mac构建

针对 Mac M1/2/3 芯片的设备&#xff0c;proces.archarm64. 执行下面命令&#xff0c;检查下按照的 node.js 版本是不是 intel x64 指令集&#xff0c;如果是的话安装下 arm64 指令集的 node.js终端中执行以下命令&#xff1a;node -p process.arch 对应的node版本也是arm版 …...

C语言-数据结构 弗洛伊德算法(Floyd)邻接矩阵存储

弗洛伊德算法相比迪杰斯特拉相似的地方都是遍历邻接矩阵不断调整最短路径的信息&#xff0c;并且两种算法面对多源最短路径的时间复杂度都是O(n^3)&#xff0c;Floyd采用的是动态规划而Dijkstra是采用贪心的思想。在Floyd中我们将创建两个数组进行辅助&#xff0c;一个path二维…...

pyspark 安装记录

1、安装软件 1、python 3.10 2、hadoop-3.3.4 里面的winutils 要记得添加 3、java-17 4、spark-3.5.1-bin-hadoop3 python 安装 pyspark,Jupyter notebook pip install pyspark pip install jupyter notebook 2、添加环境变量 JAVA_HOME=C:\PySparkService\java-17H…...

高度可定制的电竞鼠标,雷柏VT1 PRO MAX体验

不管是菜鸟还是老鸟&#xff0c;游戏玩到某个阶段很容易出现瓶颈&#xff0c;在游戏的某个阶段&#xff0c;这里面制约最大的除了操作之外&#xff0c;实际上还是我们用的硬件。比如在PC游戏中&#xff0c;鼠标的影响就非常大&#xff0c;像是在游戏中如果鼠标延迟过高&#xf…...

经验笔记:SOA(面向服务的架构)

SOA&#xff08;面向服务的架构&#xff09;经验笔记 引言 SOA&#xff08;Service-Oriented Architecture, 面向服务的架构&#xff09;是一种设计原则&#xff0c;用于构建灵活且可扩展的分布式系统。SOA强调将应用程序的不同功能封装为独立的服务&#xff0c;这些服务通过…...

triton之ttir学习

一 基本语句 1 常量 %cst arith.constant dense<520192> : tensor<4096xi32> %c127_i32 arith.constant 127 : i32 %cst arith.constant dense<520192> : tensor<4096xi32> 解释&#xff1a;这条语句定义了一个名为 %cst 的常量&#xff0c;它…...

如何在AWS账户上进行充值:一份详尽指南

大家好&#xff0c;小编今天给大家带来一份关于如何在AWS账户上进行充值的详尽指南。对于使用AWS服务的用户来说&#xff0c;保持账户余额充足是确保服务不中断的关键。下面&#xff0c;九河云将详细讲解具体的操作步骤。 步骤一&#xff1a;登录AWS管理控制台 首先&#xff…...

(六十四)第 10 章 内部排序(静态链表的插入排序)

示例代码 staticLinkList.h // 静态链表的插入排序实现头文件#ifndef STATIC_LINK_LIST_H #define STATIC_LINK_LIST_H#include "errorRecord.h"#define SIZE 100 #define NUM 8typedef int InfoType; typedef int KeyType;typedef struct {KeyType key;InfoType inf…...

appium历史版本地址链接

appium / Appium.app / Downloads — Bitbucket ios的appium界面图 链接: https://pan.baidu.com/s/1i8BRaZgQA3ImLUhKZjfhiA 提取码: 5c8b...

TCPIP网络编程(尹圣雨)UDP 轮流收发消息(windows)

端口号写的是 2345 客户端 #include <iostream> #include <winsock2.h> #pragma comment(lib, "ws2_32.lib")using std::cout; using std::endl; using std::cin;int main() {WSADATA wsa;if (WSAStartup(MAKEWORD(2, 2), &wsa) ! 0){cout <<…...

通过taotoken审计日志追溯api调用详情与安全分析

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 通过Taotoken审计日志追溯API调用详情与安全分析 对于将大模型API集成到业务流程中的团队而言&#xff0c;API调用的可见性与可控性…...

3分钟掌握猫抓扩展:轻松捕获网页视频的终极秘籍

3分钟掌握猫抓扩展&#xff1a;轻松捕获网页视频的终极秘籍 【免费下载链接】cat-catch 猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension 项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch 你是否曾经遇到过这样的情况&#xff1…...

基于MCP协议构建AI数据连接器:从原理到SQL查询服务器实践

1. 项目概述&#xff1a;一个连接AI与数据源的“翻译官”最近在折腾AI应用开发&#xff0c;特别是想让大语言模型&#xff08;LLM&#xff09;能直接、安全地访问我自己的数据库、API或者文件系统时&#xff0c;遇到了一个普遍难题&#xff1a;怎么让AI理解并操作这些外部数据源…...

ComfyUI-Manager终极指南:3步掌握AI绘画插件管理技巧

ComfyUI-Manager终极指南&#xff1a;3步掌握AI绘画插件管理技巧 【免费下载链接】ComfyUI-Manager ComfyUI-Manager is an extension designed to enhance the usability of ComfyUI. It offers management functions to install, remove, disable, and enable various custom…...

嵌入式动画优化:DMA驱动位图渲染在SAMD21上的实现

1. 项目概述与核心思路如果你玩过嵌入式开发&#xff0c;尤其是想在小小的微控制器屏幕上搞点流畅的动画&#xff0c;大概率会被“卡顿”和“闪屏”折磨过。传统的逐像素绘制&#xff0c;在需要全屏更新时&#xff0c;CPU时间几乎全耗在了等待屏幕刷新上&#xff0c;用户体验大…...

ASPICE汽车软件开发标准:V模型、能力等级与核心过程实战解析

1. 项目概述&#xff1a;为什么我们需要ASPICE这张“汽车软件地图”如果你在汽车行业&#xff0c;尤其是涉及软件、电子电气或系统开发的岗位待过一阵子&#xff0c;大概率会频繁听到一个词&#xff1a;ASPICE。它可能出现在项目启动会上&#xff0c;出现在供应商审核清单里&am…...

低多边形风出图总显廉价?揭秘Midjourney v6中--stylize、--polarize与--no纹理干扰的黄金配比公式

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;低多边形风出图的视觉认知陷阱与Midjourney v6风格断层解析 低多边形&#xff08;Low-Poly&#xff09;风格在AI图像生成中常被误认为“简约即可控”&#xff0c;实则构成一类典型的视觉认知陷阱&#…...

ComfyUI-Manager 3步深度优化:构建稳定高效的AI工作流管理平台

ComfyUI-Manager 3步深度优化&#xff1a;构建稳定高效的AI工作流管理平台 【免费下载链接】ComfyUI-Manager ComfyUI-Manager is an extension designed to enhance the usability of ComfyUI. It offers management functions to install, remove, disable, and enable vario…...

2026年冰袋吸水粉厂家大揭秘:选择指南与行业趋势题

随着冷链物流行业的快速发展&#xff0c;冰袋吸水粉作为冷链运输中不可或缺的保冷材料&#xff0c;其市场需求持续增长。然而&#xff0c;市场上冰袋吸水粉的质量参差不齐&#xff0c;如何选择一家值得信赖的厂家成为许多采购商关注的重点。本文将从行业背景、技术特点及市场趋…...

基于Claude API的智能银行应用原型:AI-First前端交互架构实践

1. 项目概述&#xff1a;一个基于Claude API的智能银行应用原型 最近在GitHub上看到一个挺有意思的开源项目&#xff0c;叫“ClaudeBankingApp”。光看名字&#xff0c;你可能会觉得这是个什么复杂的金融科技产品&#xff0c;其实不然。这是一个由开发者tzockoll-creator创建的…...