博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C实现头插法和尾插法来构建单链表(带头结点)
阅读量:6243 次
发布时间:2019-06-22

本文共 1368 字,大约阅读时间需要 4 分钟。

       我在之前一篇博客《》中具体实现了怎样使用头插法和尾插法来建立一个不带头结点的单链表,可是在实际使用中。我们用的最多的还是带头结点的单链表。今天我们就来实现一下带头结点链表的头插和尾插。

代码上传至  。

核心代码例如以下:

//创建带头结点的单链表(尾插法)void CreateListTailInsert(Node *pNode){    /**     *  就算一開始输入的数字小于等于0,带头结点的单链表都是会创建成功的。仅仅是这个单链表为空而已,也就是里面除了头结点就没有其它节点了。     */    Node *pInsert;    Node *pMove;    pInsert = (Node *)malloc(sizeof(Node));//须要检測分配内存是否成功 pInsert == NULL  ?    memset(pInsert, 0, sizeof(Node));    pInsert->next = NULL;    scanf("%d",&(pInsert->element));    pMove = pNode;    while (pInsert->element > 0) {        pMove->next = pInsert;        pMove = pInsert;//pMove始终指向最后一个节点        pInsert = (Node *)malloc(sizeof(Node)); //须要检測分配内存是否成功 pInsert == NULL  ?        memset(pInsert, 0, sizeof(Node));        pInsert->next = NULL;        scanf("%d",&(pInsert->element));    }    printf("%s函数运行,带头结点的单链表使用尾插法创建成功\n",__FUNCTION__);}//创建带头结点的单链表(头插法)void CreateListHeadInsert(Node *pNode){    Node *pInsert;    pInsert = (Node *)malloc(sizeof(Node));    memset(pInsert, 0, sizeof(Node));    pInsert->next = NULL;    scanf("%d",&(pInsert->element));    while (pInsert->element > 0) {        pInsert->next = pNode->next;        pNode->next = pInsert;        pInsert = (Node *)malloc(sizeof(Node));        memset(pInsert, 0, sizeof(Node));        pInsert->next = NULL;        scanf("%d",&(pInsert->element));    }    printf("%s函数运行,带头结点的单链表使用头插法创建成功\n",__FUNCTION__);}

转载地址:http://gqsia.baihongyu.com/

你可能感兴趣的文章
Linux CentOS6.5下编译安装MySQL 5.6.16
查看>>
CentOS 7 上systemctl 的用法
查看>>
极验验证的滑动验证码破解
查看>>
【深入Linux块设备驱动层次之一】整体层次
查看>>
Linux登录安全及用户操作审计 ,linux下清理日志脚本
查看>>
一个JS文件中引入另一个JS文件
查看>>
Laravel中pluck的使用——返回指定的字段值信息列表
查看>>
TCP Segment Offload(TSO)的实现原理浅析
查看>>
Android官方开发文档Training系列课程中文版:多样屏幕之支持不同的屏幕尺寸
查看>>
Redmine部署
查看>>
五种开源协议比较:BSD,Apache,GPL,LGPL,MIT
查看>>
Linux上编译hadoop-2.7.1的libhdfs.so和libhdfs.a
查看>>
mysql中函数greatest 与MAX区别
查看>>
ORA-01843: 无效的月份
查看>>
Centos网络管理(三)-网络配置相关
查看>>
php-fpm的pool、php-fpm慢执行日志、open_basedir、php-fpm进程管理
查看>>
编写iptables模块实现不连续IP地址的DNAT-POOL
查看>>
IOS真机测试
查看>>
linux下刻录光盘所发生的问题及解决办法
查看>>
IIS负载均衡-Application Request Route详解第一篇: ARR介绍
查看>>