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

做彩票网站网址专做品牌网站

做彩票网站网址,专做品牌网站,ui网页设计方法,wordpress模板带会员单链表的结构体定义,请查看我的另一篇文章。 C语言 头插法插入单链表 ⭐️ 【题目】采用头插法在头指针为L处建立一个带头结点的单链表,输入-1表示结束,结果返回建立的单链表。 /*** 头插法创建链表(输入-1终止)* retu…

单链表的结构体定义,请查看我的另一篇文章。

C语言 头插法插入单链表 ⭐️

题目】采用头插法在头指针为L处建立一个带头结点的单链表,输入-1表示结束,结果返回建立的单链表。

/*** 头插法创建链表(输入-1终止)* @return 返回创建好的链表头指针*/
LinkList List_HeadInsert() {// 1. 创建头结点LinkList L = (LNode *)malloc(sizeof(LNode));  // 动态分配头节点内存空间L -> next = NULL;                    // 初始化头节点的next指针为NULLint x;  // 用于存储用户输入的临时变量scanf("%d", &x);  // 2. 读取第一个输入值// 3. 头插法循环插入节点while(x != -1) {  // 当输入不是-1时继续循环// 3.1 创建新节点LNode *S = (LNode *)malloc(sizeof(LNode));  // 为新节点分配内存S -> data = x;       // 将输入值存入新节点的data域// 3.2 头插法关键操作S -> next = L -> next;  // 新节点指向原首节点(头结点的next)L -> next = S;          // 头结点指向新节点(完成插入)scanf("%d", &x);  // 3.3 读取下一个输入值}return L;  // 4. 返回链表头指针
}

完整代码: 👇🏻

#include <stdio.h>
#include <stdlib.h>  // 包含malloc和exit函数// 定义链表节点结构
typedef struct LNode {int data;            // 节点数据域struct LNode *next;  // 指向下一个节点的指针
} LNode, *LinkList;      // LNode是节点类型,LinkList是指向节点的指针类型/*** 头插法创建链表(输入-1终止)* @return 返回创建好的链表头指针*/
LinkList List_HeadInsert() {// 创建头结点(哨兵节点)LinkList L = (LNode*)malloc(sizeof(LNode));  // 分配头节点内存if (!L) exit(EXIT_FAILURE);  // 内存分配失败则退出程序L->next = NULL;              // 初始化头节点的next指针为NULLint x;  // 用于存储用户输入的临时变量printf("输入数字(-1结束): ");scanf("%d", &x);  // 读取第一个输入值// 处理直接输入-1的情况if (x == -1) {free(L);  // 释放刚创建的头节点return NULL;  // 返回空链表}// 头插法插入节点while (x != -1) {  // 当输入不是-1时循环LNode *s = (LNode*)malloc(sizeof(LNode));  // 创建新节点if (!s) exit(EXIT_FAILURE);  // 内存分配失败处理s->data = x;       // 将输入值存入新节点s->next = L->next; // 新节点指向原首节点(头插法关键步骤)L->next = s;       // 头结点指向新节点(完成插入)scanf("%d", &x);   // 读取下一个输入值}return L;  // 返回链表头指针
}int main() {// 创建链表LinkList L = List_HeadInsert();// 打印链表LNode *p = L ? L->next : NULL;  // p指向第一个实际节点(跳过头结点)while (p) {  // 遍历链表直到NULLprintf("%d ", p->data);  // 打印当前节点数据p = p->next;            // 移动到下一个节点}return 0;
}

输入/输出示例:

输入数字(-1结束): 3 5 2 -1
输出: 2 5 3  // 头插法导致逆序

示例执行流程:

  • 输入:3 5 2 -1
    • 1、创建头结点
    • 2、插入3:链表 头->3
    • 3、插入5:链表 头->5->3
    • 4、插入2:链表 头->2->5->3
    • 5、遇到-1结束
  • 输出:2 5 3(与输入顺序相反)

在这里插入图片描述

http://www.dtcms.com/wzjs/593753.html

相关文章:

  • 有什么做美食的视频网站厦门制作网站企业
  • 鸿基建设工程有限公司网站wordpress安装官网
  • 做任务给钱的网站阿里巴巴运营的工作内容
  • 在线开发培训网站建设vs网站开发教程
  • 福州优化网站建设广东响应式网站
  • 网站建设竞标ppt给公司做网站数据分析
  • 管理公司网站建设室内设计方案设计说明
  • 太原网站建设搭建网站建设需要的东西
  • 做搜索引擎网站wordpress 移动端检查
  • 电影网站的代理怎么做室内设计公司排名前100
  • 前端网站demo天津做网站的费用
  • 个人网站做什么内容好浙江坤宇建设有限公司网站
  • 新时代文明实践站网址央美老师做的家具网站
  • 百度做网站的服务合同全国教育平台网站建设
  • 网站建设采用的技术wordpress开启报错
  • 江苏泰州网站建设年度网站信息化建设工作计划
  • 手机网站制作系统网站模板编号
  • 哪个网站做螺丝生意好先进网站建设流程
  • 网站建设有没有做的必要在线设计免费
  • 福州网站建设方案咨询广州线上教学
  • 微信小程序网站开发教程简述网络营销的特点是什么
  • 中国新农村建设网站青阳做网站
  • 南京网站设计培训手机网站封装用户体验
  • 宋庄网站建设高端做网站价格
  • 网站定制开发哪家厉害上海网页设计
  • 网站建设的售后服务流程wordpress 导入json
  • 计算机网站开发参考文献怎样才能把网站做好
  • 河北地矿建设集团官方网站公众平台如何做网站
  • 许昌网站建设公司排行榜百度跨境电商平台
  • wdcp 网站迁移网站建设多少钱 小江网页设计