首页 > 其他分享 >链表从指定节点后方插入新节点

链表从指定节点后方插入新节点

时间:2022-12-05 22:45:37浏览次数:35  
标签:head struct next 链表 插入 Test NULL data 节点

在指定数据后面插入节点的案例:在Test结构体(这个结构体的data为2)后面插入一个Test结构体(data=6)

#include<stdio.h>

struct Test
{
  int data;
  struct Test * next;
};

printfLink(struct Test * head)
{
   while(head!=NULL)
   {
      printf("%d\n",head->data);
      head=head->next;
   }
   putchar('\n');
}

void InsertNode(struct Test *head,int data,struct Test *new)
{
    struct Test * p=head;
    while(p!=NULL)
    {
        if(p->data==data)
        {
           new->next=p->next;
           p->next=new;
        }
        p=p->next;
    }
}

int main()
{
   struct Test t1={1,NULL};
   struct Test t2={2,NULL};
   struct Test t3={3,NULL};
   t1.next=&t2;
   t2.next=&t3;
   printf("before insert:\n");
   printfLink(&t1);
   struct Test new={6,NULL};
   InsertNode(&t1,2,&new);
   printf("after insert:\n");
   printfLink(&t1);
}

 输出结果:

before insert:
1
2
3

after insert:
1
2
6
3


 

标签:head,struct,next,链表,插入,Test,NULL,data,节点
From: https://www.cnblogs.com/zxtang/p/16953609.html

相关文章

  • excel隔行插入一行
    1、准备好数据源 2、在C列准备辅助列(辅助列的值需要为递增或递降)  3、选择辅助列C列,点击“排序”------>“升序”即可 4、效果,最后复制到交换机中即可实现批......
  • 链表的遍历
    遍历的概念:从链表的第一个结点开始,依次访问每一个结点,直至到达链表的末尾。如何实现链表的遍历?单向链表:结点中只有一个指针域,指向后结点。带头结点的单向链表的遍历步骤:1、......
  • 【转载】详解mysql插入数据后返回自增ID的七种方法_java
    引言mysql和oracle插入的时候有一个很大的区别是:oracle支持序列做id;mysql本身有一个列可以做自增长字段。mysql在插入一条数据后,如何能获得到这个自增id的......
  • 新增数据——单表带批量插入
    procedureTAcptkController.CreateAdvancePayment;varAcptk:TAcptk;Acptks:TObjectList<TAcptk>;beginifContext.Request.QueryStringParam('Batch').ToLo......
  • leetcode 6256. 将节点分成尽可能多的组 二分图判定+bfs+并查集
    6256.将节点分成尽可能多的组难度困难7收藏分享切换为英文接收动态反馈给你一个正整数 n ,表示一个 无向 图中的节点数目,节点编号从 1 到 n 。同时给你一个......
  • 求二叉树中最大的二叉搜索子树的头节点
    求二叉树中最大的二叉搜索子树的头节点作者:Grey原文地址:博客园:求二叉树中最大的二叉搜索子树的头节点CSDN:求二叉树中最大的二叉搜索子树的头节点题目描述给定一棵二......
  • vba-将excel中数据插入数据库
    SubaddDate1()DimiAsInteger,jAsInteger,nAsIntegerDimsqlAsStringDimconAsNewADODB.ConnectionWithcon.Provider=......
  • LeetCode:NO.142环形链表Ⅱ
    题目描述给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表......
  • 排序链表 重排链表 最接近目标价格的甜点成本 环形链表
    148.排序链表弄到数组里,数组排序,再弄个新链表Listlist=newArrayList<>();ListNodepre=head;while(pre!=null){list.add(pre.val);pre=pre.next;}int[......
  • Quartz使用监听器插入定时任务执行日志
    Quartz使用监听器插入定时任务执行日志使用springboot,将监听器交给spring容器管理,并像其中注入日志服务类,环境准备工作实现任务调度需要导入两个quartz的maven依赖<depen......