头插法建立单链表——借鉴博客园小久(考研)

头插法、尾插法建立单链表(含详细注释C++) 一、信息须知: 1:malloc()函数,头文件为cstdlib。 用法:node *p=(node )malloc(sizeof(node))。作用:分配一个node类型大小的内存空间, 并把其赋值给node 型的指针p。" node *p=new node; "也可实现此作用。 2: typedef char datatype; 为char起别名datatype,方便链表data数据类型修改。 二、思路分析: 1、头插法思路图示分析 2、尾插法思路图示分析 三、代码展示: //以" &am 阅读详情

概念描述

单链表是一种链式存储的数据结构,每一个节点存放数据和指向下一个节点的指针。

头插法是指每次将新节点插入头部(head节点之后),最终链表顺序与插入顺序相反。

这就好比你在食堂排队,大妈所在窗口是头部,每次都有人插入到队伍最前面,结果你是最后买到饭的。

#include<stdio.h>
#include<stdlib.h>

typedef struct _node{
    int data;
    struct _node *next;
}node;

node *headinsert(int n);//创建链表并插入新节点 
void output(node *head);//遍历链表并输出节点数据 
void destroy(node *head);//清除链表 

int main(){
    int n;
    node *head;
    scanf("%d",&n);
    head=headinsert(n);
    output(head);
    //printf("%d\n",head);
    destroy(head);
    return 0;
}
node *headinsert(int n){
    node *head,*q;
    
    head=(node *)malloc(sizeof(node));//malloc返回void* 需要强制转换类型 
    head->next=NULL;
    for(int i=0;i<n;i++){                //申请新节点并插入链表 
        q=(node *)malloc(sizeof(node));
        scanf("%d",&q->data);
        q->next=head->next;    
        head->next=q;
    }
    return head;
}

void output(node *head){
    node *q;            //新建指针q使其从头节点遍历链表 
    q=head;
    while(q->next!=NULL){
        q=q->next;
        printf("%d ",q->data);
    }
}
//对于新手释放链表暂时不考虑,比如我 
void destroy(node *head){
    node *q,*p;
    for(p=head;p;p=q){
        q=p->next;
        free(p);
    }
}
7、CUDA 软件架构与开发工具详解 本文深入探讨了CUDA的软件架构与核心开发工具,涵盖CUDA数组与纹理、表面引用、图形互操作性机制,以及CUDA运行时与驱动程序API的功能对比。详细解析了nvcc编译器的使用方法、编译轨迹与代码生成选项,并结合实际示例说明其应用。文章旨在帮助开发者理解不同技术的选择依据,合理利用CUDA工具链,提升GPU计算性能,适用于从入门到进阶的CUDA开发人员参考。 阅读详情

相关推荐

Python实战:基于PyG和Stable-Baselines3复现柔性车间调度算法(附数据集)

本文提供了一份基于图神经网络与深度强化学习的柔性车间调度实战指南。通过PyTorch Geometric构建异构图表示车间状态,并利用Stable-Baselines3中的PPO算法训练调度智能体,详细介绍了从环境建模、网络设计到训练评估的完整代码实现,帮助开发者构建可复用的工业级智能调度系统。

ansible6ops的博客 608

头插法建立单链表

#include<stdio.h> #include<stdlib.h> typedef struct Node { int data; struct Node *next; } Node,*LinkList; //LinkList 结构体指针类型 LinkList L; Node *CreateFromHead(); void DisplyNode(); main()...

weixin_45142629的博客 640

OpenBCI脑电数据处理实战:用MNE库从Raw对象到可视化分析全流程

本文提供了使用MNE-Python库处理OpenBCI脑电数据的完整实战指南。从通过BrainFlow库获取原始数据流、创建核心的Raw对象,到进行工频滤波、带通滤波等关键预处理步骤,最后实现时域信号、功率谱密度及地形图等多种专业可视化分析,手把手教你完成脑机接口数据处理的全流程。

gin88的博客 370

数据结构——用头插法和尾插法建立链表

一、要求以头插法建立单链表 #include <stdio.h> #include <stdlib.h> typedef int ElemType; typedef struct LNode { ElemType data; struct LNode *next; }LNode,*LinkList; LinkList Create(); void print( LinkList L); int main() { LinkList L = Create(); pr

#两个西柚 5442

2025虚幻游戏逆向工程解包尝试

2025虚幻游戏逆向工程解包指南 本文详细介绍了虚幻引擎5游戏逆向解包的完整流程,主要包括获取AES密钥、生成映射文件和导出资源三个关键步骤。作者在实际操作中遇到诸多难题:AES密钥获取工具存在加壳保护问题,映射文件生成器依赖复杂的VS编译环境,DLL注入工具的使用也存在技术门槛。通过多次尝试,作者发现部分游戏可直接搜索现成的AES密钥,而映射文件生成需要额外下载Memcury依赖库才能正常编译。文章提供了相关工具的下载链接和具体操作说明,但同时也指出每个环节都可能出现意外状况,逆向工程实际执行过程远比理论

wsdchong的博客 6160

亚马逊(Amazon ads)广告API申请步骤(已经更新完)

你如果是自己的店铺使用,就选择左边的、如果是授权的那种给别人用就选右边的。审核通过了才能进行下一步,我目前就是刚申请完,后续会持续更新!然后会调整到,下面的页面,选择Agency然后右上角点击创建。审核通过会发邮件到你的企业邮箱、时间大概是1-7天左右。输入对应的信息,点击提交审核,就可以开始申请了。1、广告平台跟卖家平台是分开的,这个概念要清楚。2、注册广告一定要用企业邮箱!回到首页,点击成为合作伙伴。注册了以后会跳转到广告。然后再点击加入合作伙伴。然后会弹出下面的页面。

阿泽的博客 5659

c/c++单链表

11/要求以头插法建立单链表(c;c++) #include <stdio.h> #include <stdlib.h> typedef int ElemType; typedef struct LNode { ElemType data; struct LNode *next; }LNode,*LinkList; LinkList Create(); void print( LinkList L); int main() { LinkList L = Create(); print

m0_58233168的博客 1372

MATLAB应用实战系列(七十七)-基于长时间序列栅格数据的MK检验

1 MK检验介绍 MK检验是曼-肯德尔法,又称Mann—Kenddall 检验法,是一种气候诊断与预测技术,应用Mann-Kendall检验法可以判断气候序列中是否存在气候突变,如果存在,可确定出突变发生的时间。Mann-Kendall检验法也经常用于气候变化影响下的降水、干旱频次趋势检测。目前常用于长时间序列的栅格数据的显著性检验,在植被覆盖度,NDVI,NPP等方面尤为常见。 该检验功能强大,不需要样本遵从一定的分布,部分数据缺失不会对结果造成影响,不受少数异常值的干扰,适用性强。不但可以检验时

wenyusuran的专栏 6291

数据结构(使用尾插法实现单链表)

1.线性表的链式存储就是单链表,单链表通过一组任意的存储单元来存储线性表的数据元素(逻辑相邻,存储离散),单链表对于每一个链表结点,不但存储自身数据,还开辟了存储一个指向后继结点的指针。优点解决了顺序表需要大量连续存储单元的问题,单链表的数据元素离散的分布在存储空间中。3.建立单链表可以使用头插法和尾插法两种操作,其中头插法创建的单链表数据有逆置效果。4.创建单链表可以使用头结点方便编码,也可以不使用头结点,本代码使用了头结点。缺点需要额外的存储空间存放指针域。...

DMHY123的博客 4146

【AI 赋能:Python 人工智能应用实战】16. BERT微调实战:中文新闻分类全流程(附模型蒸馏+ONNX部署完整代码)

中文新闻分类是NLP领域的经典实用任务,BERT模型凭借双向上下文建模能力,能有效解决中文歧义与长文本依赖问题,但存在推理速度慢、资源占用高的痛点。本文以THUCNews中文新闻数据集为核心,提供从数据预处理、BERT微调、模型蒸馏到生产部署的全流程实操指南。首先详解THUCNews的多编码读取与清洗(解决gbk/utf-8兼容问题);然后实现BERT微调,加入早停机制与混淆矩阵可视化,验证准确率达93.8%;接着用DistilBERT完成模型蒸馏,在仅损失0.6%准确率的前提下,将推理速度提升2.7倍。

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 1098

《Scratch图形化等级考试(1~4级)历届真题解析》专栏总目录

❤️ 专栏名称:《🌸 专栏介绍:中国电子学会《全国青少年软件编程等级考试》Scratch图形化等级考试(1~4级)历届真题解析。🚀 订阅专栏:原价 99.9,🔥 火爆订阅中 🔥,限时 19.9。订阅后可阅读专栏内所有文章,本专栏持续更新中,欢迎订阅!

人生就是一个不断学习的过程 1万+

浙大数据结构,头插建立链表

6-7 头插法创建单链表(C) (25 分) 本题要求实现两个函数,输入n个数据,采用头插法创建单链表并打印。例如:如果输入4 ,再输入3 7 9 5,则应打印输出5 9 7 3。 链表结点结构定义: struct Node { //链表结点 int data; //数据 struct Node* link; //指向下一个结点的指针 }; 函数接口定...

red_red_red的博客 1185

YOLO11改进-注意力-引入自调制特征聚合模块SMFA

SMFA(自调制特征聚合模块): SMFA模块用于协同建模局部和非局部信息,它分为两个分支:一个是EASA(Efficient Approximation of Self-Attention,简化的自注意力分支),用于捕获非局部信息;另一个是LDE(Local Detail Estimation,局部细节估计分支),用于捕获局部细节。EASA通过对输入特征进行下采样,然后利用全局特征的方差进行调制,再与原始特征进行聚合,提取非局部结构信息。LDE分支则通过卷积操作提取输入特征中的高频局部信息。

qq_64693987的博客 2208

PTA 6-2 头插法创建单链表(C) (25分)

6-2 头插法创建单链表(C) (25分) 本题要求实现两个函数,输入n个数据,采用头插法创建单链表并打印。例如:如果输入4 ,再输入3 7 9 5,则应打印输出5 9 7 3。 链表结点结构定义: struct Node { //链表结点 int data; //数据 struct Node* link; //指向下一个结点的指针 }; 函数接口定义: /* 头插法建立单链表:...

qq__879061011的博客 6631

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

数据结构入门——头插法创建链表

数据结构入门——头插法创建链表 由于顺序表的存储特点是逻辑关系上相邻的两个元素在物理位置上也相邻,由于这个特点,在插入与删除元素的时候需要移动大量的元素,而链表在插入和删除元素时避免了这种情况。 要了解链表,首先应该知道指针,链表称之为线性结构,是因为链表每一个节点都存储着两部分元素,存放数据的为数据域,存放需要存放的数据,另一部分存放直接后继(下一个节点)的地址,...

随便写写的博客 3407

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

6-4 实现基于邻接矩阵表示的深度优先遍历

实现基于邻接矩阵表示的深度优先遍历。 函数接口定义: void DFS(Graph G, int v); 其中 G 是基于邻接矩阵存储表示的无向图,v表示遍历起点。。 裁判测试程序样例: #include <stdio.h> #include <stdlib.h> #define MVNum 10 int visited[MVNum]; typedef struct{ char vexs[MVNum];

apple_60803036的博客 3811

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

头插法和尾插法建立单链表

在进行单链表的基本运算之前必须先建立单链表,建立单链表的常用方法有两种:头插法建表和尾插法建表 头插法建表,从一个空表开始,读取字符数组a中的字符,生成新节点,将读取的数据存放到新节点的数据域中,然后将新节点插入到当前链表的表头上,直到读完字符数组a的所有元素为止。 头插法建表虽然简单,但生成的链表中节点的次序和原数组的次序相反,若希望两者的次序一致,可采用尾插法建立   尾插法建表,该算...

zmeilin的博客 2万+

头插法建立单链表(带头结点和不带头结点)

/每个结点存放一个数据元素。//指针指向下一个结点。typedef struct LNode{ //定义单链表结点类型。//头结点之后暂时还没有结点。LinkList L;//声明一个指向单链表的指针。//头指针指向NULL。//初始化一个单链表(带头结点)

aa_xiaokezhou的博客 1710

【数据结构】头插法新建单链表

头插法新建单链表

zx1041561837的博客 709

C语言--头插法建立单链表并输出

#include <stdio.h> #include <stdlib.h> typedef struct LNode { int data; struct LNode *next; }LNode,*LinkList; LinkList L;//全局变量L,可以省略函数参数传递; LinkList insert()//头插法 { ...

xinpx1457的博客 6946

C语言用头插法建立单链表

emm,都在注释里…… #include<iostream> #include<stdio.h> #include<stdlib.h> using namespace std; typedef struct Llist { int data; struct Llist *next; }Llist; void createlist(Llist *&c...

编程知识分享,主打前端 3万+

头插法建立单链表——C语言

头插法建立单链表

去无人的岛,摸鲨鱼的角 3664

头插法建立单链表(详解版)

用头插法建立单链表

m0_62677745的博客 1万+

利用头插法建立单链表(纯C语言小白版)

【代码】利用头插法建立单链表(纯C语言小白版)

qq_60567426的博客 4648

数据结构__头插法建立单链表、尾插法建立单链表

头插法、尾插法建立单链表

qq_59002691的博客 7751
上一篇: 顺序表的插入(考研)
下一篇: 首字母大写
xkcodeblocks
博客等级 码龄9年 6粉丝 25原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值