动态创建链表 之尾插法

4.代码四

        尾插法:其实与头插法相差不差,在尾插法函数中insertBehind(),传过来的head尽量不变,struct Test *p;创建临时指针p = head;  同样的,也是先判断 传过来的head 是否等于 0;等于0,则 head = new; return  head;   也是用while 循环判断 p->next !==NULL;不为空一直循环到为空跳出,跳出则:p->next = new; return head; 超级无敌残暴!!!

#include<stdio.h>
#include<stdlib.h>
struct Test
{int data;struct Test *next;
};void printLink(struct Test *head)
{struct Test *point;point = head;printf("output the new insert data:\n");while(point !=NULL){printf("%d ",point->data);point = point->next;}putchar('\n');
}struct Test* insertFromHead(struct Test *head,struct Test *new)
{if(head ==NULL)
{head = new;}else{new ->next = head;head = new;}return head;
}struct Test *creatLink(struct Test *head)
{struct Test *new;while(1){new = (struct Test*)malloc(sizeof(struct Test));printf("Please input your new node data:\n");scanf("%d",&(new->data));if(new->data ==0){printf("0 quit\n");free(new);return head;}head = insertFromHead(head,new);}
}struct Test *insertBehind(struct Test *head,struct Test *new)
{struct Test *p = head;if(p ==NULL){head = new;return head;}while(p->next!=NULL){p = p -> next;}p->next = new;return head;
}int main()
{struct Test *head = NULL;struct Test t1 = {1000,NULL};head = creatLink(head);printLink(head);head = insertFromHead(head,&t1);printLink(head);struct Test t2 = {2000,NULL};head = insertBehind(head,&t2);printLink(head);return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/2449.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Pycharm远程连接实验室服务器Conda环境配置

如何配置Pycharm和远程服务器 这类博客较多&#xff0c;参考内容 https://blog.csdn.net/fengbao24/article/details/125515542 Python解释器选择&#xff08;conda3&#xff09; 1. Settings -> Add Interpreter -> On SSH 注意&#xff0c;这里的SSH需要在你把远程…

OpenHarmony南向开发案例:【 智能家居中控】

应用场景简介 智能家居。 今天打造的这一款全新智能家庭控制系统&#xff0c;凸显应用在智能控制和用户体验的特点&#xff0c;开创国内智能家居系统体验新局面。新的系统主要应用在鸿蒙生态。 工程版本 系统版本/API版本&#xff1a;OpenHarmony SDK API 8IDE版本&#xf…

c++的策略模式,就是多态

一、定义&#xff1a; 策略模式定义了一系列的算法&#xff0c;并将每一个算法封装起来&#xff0c;而且使它们还可以相互替换。 策略模式让算法独立于使用它的客户而独立变化。 二&#xff0c;核心 抽象策略&#xff08;抽象基类&#xff09;&#xff08;Strategy&#xff09…

酷开科技逐步为用户构建健全的智慧家庭生活场景

大规模与精细化人群技术则是通过大量的计算能力和精细化的运营能力&#xff0c;建立用户专属数据储存区域&#xff0c;使得用户在使用不同电视的观影偏好和兴趣能够能够得以延续。 不拘泥于自有品牌终端数量&#xff0c;酷开系统除了集成在创维电视上&#xff0c;还服务于飞利…

idea上传项目到gitee(码云)

1、打开码云&#xff0c;新建仓库 2、创建 3、这就是创建成功的页面 4、复制仓库地址&#xff0c;后面需要用到 2、打开我们的项目&#xff1a;例如我现在的项目 1、idea创建git仓库 2、选择我们项目文件夹的目录 3、查看文件是否变色&#xff0c;变色表示成功了 4、添加到缓…

关于WSL2下安装的mysql sever服务,如何在host或外部连接使用的问题

快速提示&#xff1a; 在wsl2下&#xff0c;不允许在外部使用root来登录mysql,所以必须使用非root的帐号来登录 所以&#xff0c;如果明白如何做了&#xff0c;下面的步骤就不必看了。 下面是&#xff0c;给小白用户的教程&#xff1a; 步骤 1: 首先&#xff0c;使用 WSL 命令…

0元实现网站HTTP升级到HTTPS(免费https证书)

HTTPS就是在HTTP的基础上加入了SSL&#xff0c;将一个使用HTTP的网站免费升级到HTTPS主要包括以下几个步骤&#xff1a; 1 获取SSL证书 永久免费的https证书申请通道https://www.joyssl.com/certificate/select/free.html?nid16 免费的SSL证书同样能实现HTTPS&#xff0c;国…

uniapp同步开发h5+小程序双平台踩坑记录

最近做项目的需求是先发布h5&#xff0c;后续再开发上线微信小程序版&#xff0c;自然我选择了uniapp多平台打包&#xff0c;过程中也踩了一些坑。本篇文章记录了使用uniapp开发h5的注意事项&#xff0c;及打包成小程序需要兼容改动的内容。 1.需要在pages.json注册页面路由 在…

SpringBoot内容协商机制(就是接受数据的类型如json,xml)

目录 一、基于请求头的内容协商机制 二、基于请求参数的内容协商机制 一、基于请求头的内容协商机制 如果我们的Java服务为浏览器和安卓手机同时提供服务&#xff0c;浏览器期望接受的请求是JSON格式&#xff0c;安卓客户端期望接收的请求是XML格式&#xff0c;这个时候是否需…

C++中的智能指针

C中的智能指针 文章目录 C中的智能指针1.为什么需要智能指针&#xff1f;2.智能指针的类型2.1 std::shared_ptr2.2 std::unique_ptr2.3 std::weak_ptr Reference 笔者在学习ROS2的过程中&#xff0c;遇到了std::make_shared这种用法&#xff0c;一眼看不懂&#xff0c;才发现笔…

vue2使用过滤器实现菜单栏文字动态显示

文章目录 前言一、过滤器filters1.data数据2.beforeCreate 二、菜单栏文字动态显示 前言 左侧菜单栏有缩进&#xff0c;所以不同级别的菜单名可显示的文字数不同。顶部菜单栏是下拉框&#xff0c;所以文字是固定的 一、过滤器filters 由于filters不能使用this为undefined&…

Java 网络编程之TCP(三):基于NIO实现服务端,BIO实现客户端

前面的文章&#xff0c;我们讲述了BIO的概念&#xff0c;以及编程模型&#xff0c;由于BIO中服务器端的一些阻塞的点&#xff0c;导致服务端对于每一个客户端连接&#xff0c;都要开辟一个线程来处理&#xff0c;导致资源浪费&#xff0c;效率低。 为此&#xff0c;Linux 内核…

【CV】opencv特征匹配算法

特征匹配是计算机视觉领域中的一项关键任务&#xff0c;它用于在不同图像中寻找相似的特征点&#xff0c;并将它们进行匹配。这些特征点可以是图像中的角点、边缘、斑点等&#xff0c;在不同的图像中可能因为旋转、缩放、光照变化等因素发生变化。 在OpenCV中&#xff0c;提供…

华为数通HCIA ——企业网络架构以及产品线

一.学习目标&#xff1a;精讲网络技术&#xff0c;可以独立搭建和维护中小企业网络&#xff01; 模拟器&#xff08;华为方向请安装ENSP&#xff0c;Ensp-Lite已有安装包&#xff0c;号称功能更加完善-这意味着要耗费更多的系统资源但是仅对华为内部伙伴申请后方可使用&#x…

VS2022配置和搭建QT

一、下载QT 可以去QT官网下载:https://www.qt.io/product/development-tools。 直接安装。 二、安装qt插件 直接在vs插件市场搜索就行。 安装的时候根据提示&#xff0c;关闭vs自动安装 再次进去vs提示你选择qt版本&#xff0c;psth里边找到安装版本的qmake.exe就行 配…

卡尔曼滤波器(一):卡尔曼滤波器简介

观看MATLAB技术讲座笔记&#xff0c;该技术讲座视频来自bilibili账号&#xff1a;MATLAB中国。 一、什么是卡尔曼滤波器 卡尔曼滤波器是一种优化估计算法&#xff0c;是一种设计最优状态观测器的方法&#xff0c;其功能为&#xff1a; 估算只能被间接测量的变量&#xff1b;通…

https加密证书

网站要出去安全模式访问&#xff0c;加强网络安全就需要使用HTTPS加密证书。 本文主要介绍什么是HTTPS加密证书&#xff0c;如何申请HTTPS加密证书&#xff0c;如何安装HTTPS加密证书等问题展开讨论。 什么是HTTPS加密证书&#xff1f; HTTPS加密证书的行业产品用语叫作SSL证…

互联网大佬座位排排坐:马化腾第一,雷军第二

关注卢松松&#xff0c;会经常给你分享一些我的经验和观点。 这是马化腾、雷军、张朝阳、周鸿祎的座位&#xff0c;我觉得是按照互联网地位排序的。 马化腾坐头把交椅&#xff0c;这个没毛病&#xff0c;有他在的地方&#xff0c;其他几位都得喊声“大哥”。雷军坐第二把交椅…

Go语言常见错误 | 工程组织不合理 (工程结构和包的组织)

编写程序的过程中,组织代码的方式,不仅影响到代码的质量,也决定了团队的协作效率。在使用Golang进行项目开发时,工程组织不合理(包括工程结构和包的组织)是个常见的问题。下文将详述这个问题,并提供改善的方案。 工程结构不合理 Golang项目的工程结构对于代码的模块性…

ApplicationListener监听器

在spring-context 5.3.26中来看一下它的定义&#xff1a; package org.springframework.context;import java.util.EventListener; import java.util.function.Consumer;FunctionalInterface public interface ApplicationListener<E extends ApplicationEvent> extends…