typedef struct LNode{int data;struct LNode* next;
}LNode, *LinkList; //这里LNode 和 *LinkList 等价,只不过LNode更强调一个结点,LinkList更强调一个链表。//指定结点的后插操作:在p结点之后插入元素e
bool InsertNextNode(LNode *p,int e)
{if(p == NULL)return false;LNode *s = (LNode*)malloc(sizeof(LNode));if(s == NULL) //内存分配失败return false;s -> data = e; //用结点s保存数据元素es -> next = p -> next;p -> next = s; //将结点s连到p之后return true;
}//指定结点的前插操作:在p结点之前插入元素e
bool InsertPriorNode(LNode *p,int e)
{if(p==NULL)return false;LNode *s = (LNode*)malloc(sizeof(LNode));if(s==NULL) //申请空间失败return false;s -> next = p -> next; //新结点s连接到p之后s -> data = p -> data; //将p中元素复制到s中p -> next = s;p -> data = e; //将e赋值给p结点return true;
}

前插法示意

单链表指定结点的前插与后插(C/C++)相关推荐

  1. 单链表——指定结点的前插和后插

    后插 #define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> #include<stdlib.h> typedef struct ...

  2. 数据结构单链表:指定结点的前插、后插操作

    指定结点的前插操作 typedef struct LNode{int data;struct LNode *next; }LNode, *LinkList;//在p结点之前插入元素e bool Ins ...

  3. 单链表的前插法和后插法创建

    根据结点插入位置的不同,链表的创建方法可分为前插法和后插法 前插法 前插法是通过将新节点逐个插入链表的头部(头节点之后)来创建链表,每次申请一个新节点,读入相应的数据元素值,然后将新节点插入到头节点之 ...

  4. 写一个函数DeleteRange删除单链表中结点的值在low 和high之间的结点

    /*实验2 1. 写一个函数DeleteRange删除单链表中结点的值在low 和high之间的结点 (low和high的值是多少可自由设计).并且要在程序中验证其功能实现. (可在实验1的第3题的基 ...

  5. C++删除单链表指定元素

    C++删除单链表指定元素 对于C++单链表的创建与打印操作之前已经讲述过,那么普通的元素删除也可以很容易实现.在力扣203.移除链表元素中提出了一种元素删除操作,题目如下: 本来觉得很简单,但是在实现 ...

  6. 狸猫换太子--删除无头单链表中结点

    狸猫换太子–删除无头单链表中结点 @(算法学习) 学习自<编程之美>. 很有意思的一种做法. 给定一个没有头指针的单链表,一个指针指向次单链表中的一个中间结点,删除此结点. 分析:这种根本 ...

  7. 已知一个带有表头的单链表,结点结构为data-link,假设该链表只给出了头指针list。在不改变链表的前提下,请设计一个尽可能高效的算法,查找链表中倒数第k个位置上的结点(k为正整数)。

    今天和大家分享一道2009年代码为408的一道真题: 已知一个带有表头的单链表,结点结构为data-link,假设该链表只给出了头指针list.在不改变链表的前提下,请设计一个尽可能高效的算法,查找链 ...

  8. 双向链表的前插法和后插法创建

    根据结点插入位置的不同,链表的创建方法可分为前插法和后插法 前插法 前插法是通过将新节点逐个插入链表的头部(头节点之后)来创建链表,每次申请一个新节点,读入相应的数据元素值,然后将新节点插入到头节点之 ...

  9. 单链表基本操作的实现——前插法与后插法创建单链表

    一.前插法创建单链表 算法步骤: (1)创建一个只有头结点的空链表. (2)根据创建链表包括的元素n,循环n次以下操作: 生成新结点:-->输入元素值赋给新结点数据域:-->将新结点插入到 ...

最新文章

  1. MXNet动手学深度学习笔记:卷积计算
  2. java 注解类说明
  3. php time 毫秒_PHP获取当前时间的毫秒数
  4. js 判断一个元素是否存在
  5. php单例模式的实例,PHP的单例模式的一个实例_php
  6. Linq、Lambda表达式详细总结(转)
  7. 【Groovy】MOP 元对象协议与元编程 ( 方法注入 | 使用 MetaClass 注入静态方法 )
  8. DOM中严格区分大小写
  9. [转]配置子报表和钻取报表
  10. 修改Docker0网桥默认网段
  11. Boost:reference wrapper参考包装的测试程序
  12. 思科交换机ping得通 traceroute不通_网络中经常接触的Ping 一次性教你弄懂如何检测三层网络...
  13. JaveWeb中实现分页的总结
  14. bat判断3306端口号是否被占用
  15. ubuntu 16.04 安装QT问题
  16. jzoj3058-火炬手【高精度,暴力】
  17. 为什么学习Python数据分析,python数据分析有什么用?
  18. (Giser源数据获取必备)地理空间数据云
  19. Linux centos7系统下JBoss7.1的部署安装
  20. 什么平板电脑能够用来编程

热门文章

  1. 性价比最高处理器和国产处理器I.MX6UL/A40I/T3对比
  2. C4D学习笔记3-动画-动画渲染流程案例
  3. 基于蓝墨云班课的“出门门票”设计与改进
  4. Android程序的入口
  5. 解决mysql每天12点的dos弹框
  6. 服务器硬盘用在硬盘录像机,网络硬盘录像机是干什么用的
  7. 3812 机器人走迷宫(枚举 + 全排列)
  8. 秦岚微博之夜喜提热搜第一 优雅公主裙演绎真人版辛德瑞拉
  9. 流利阅读 2019.1.22 Top S. Korean animal rights group slammed for destroying dogs
  10. LAZARUS APT利用恶意word文档攻击MAC用户