链表的代码实现【数据结构F】

在这里插入图片描述
在这里插入图片描述
单链表的特点:每次结点的分配都是动态进行分配的,melloc函数实现的功能是开辟一块新的内存空间,但是返回的是一个地址,只能是地址,没有别名的事情,那就有点难办了,这是一种间接的寻址,不像数组那样,可以通过名字进行直接寻址,间接寻址就是必须找到第一个元素的位置,通过第一个元素的位置,依次寻找其余元素的位置,很是不方便的,用一个指针变量来记录开辟的那一块地址空间,没有办法,说是把他赋予一个新的别名,也就是说节点没有别名,
位序:位序在单链表当中是比较模糊的概念,位序不像是角标一样,有单独的存储空间,很方便,这个位序会根据插入元素的位置来进行变化,变化了。我们进行使用的时候就要进行遍历操作,很麻烦

为什么会提到逆序?

我们插入的时候为什么采用逆序插入的方法?
如果我们按照正常的插入,那么每一次插入都要从第1个元素开始去寻找,后面所插入的位置,也就相当于是每插入一个元素,就要对链进行一次遍历,这样增加了时间复杂度,使得效率大大降低,当我们采用逆袭插入的方法,每一次插入都可以在第1个位置插入,改变的只是头节点的指针和第1个元素的指针,前面插入的元素都依次向后移动,但是位序对于链表来说是非常模糊的概念,这里就不进行讨论

单链表的正向创建
在这里插入图片描述

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

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

相关文章

(图文详细)如何使用Code::Blocks运行c/cpp文件?

1) 新建源文件 打开 CodeBlocks ,在上方菜单栏中选择 “文件 --> 新建 --> 空白文件”,如下图所示: 或者直接按下 Ctrl Shift N 组合键,都会新建一个空白的源文件,如下图所示: 在空白源文件中输入…

数据结构【插入操作具体代码的实现】

插入操作具体代码的实现 单链表delete的操作:

Linux GCC简明教程(编写c语言程序)

市面上常见的 Linux 都是发行版本,典型的 Linux 发行版包含了 Linux 内核、桌面环境(例如 GNOME、KDE、Unity 等)和各种常用的必备工具(例如 Shell、gcc、VIM、Firefox 等),国内使用较多的是 CentOS、Ubunt…

解决VS'scanf':this function or variable may be unsafe.`(VS安全函数问题)

在 VS(Visual Studio)下编译C语言程序,如果使用了 scanf()、gets()、strcpy()、strcat() 等与字符串读取或操作有关的函数,有时候VS会报错,提示该函数可能不安全,并且建议替换为带有_s后缀的安全函数&#…

双向循环链表【数据结构】

单链表的缺点以及对单链表缺点的改进和双向链表的理解操作 双向循环列表的插入操作 线性结构是一种逻辑结构,顺序存储结构,链式存储结构

什么是编译器?(程序是怎么跑起来的)

我们平时所说的程序,是指双击后就可以直接运行的程序,这样的程序被称为可执行程序(Executable Program)。在 Windows 下,可执行程序的后缀有 .exe 和 .com(其中 .exe 比较常见);在类…

Java 的内存管理机制是怎样的?

Java 的内存管理机制是怎样的?

队列【数据结构】

注意 我们的销毁队列是否能够成功取决申请空间的方式,动态申请出来的空间都是可以进行销毁的,对于静态的话是不能直接进行销毁的 ADT 相当于是c当中的类结构,是处理数据时,提前对数据进行一定的管理操作,就是将某一件事…

C++继承详解

废话不多说直接上代码 class 派生类名:[继承方式] 基类名{ 派生类新增加的成员 }; 继承方式限定了基类成员在派生类中的访问权限,包括 public(公有的)、private(私有的)和 protected&…

串【数据结构F】

先来讲解一下串结构的概念性质的东西,以及我们需要注意的一些问题 串结构简单的ADT以及一些基本的操作 最小操作函数:就是功能已经达到了最小的功能实现了,不能继续执行更大的功能,类似于我们在家盖房子一样,水泥的…

C++ STL与迭代器

将容器类模板实例化时,会指明容器中存放的元素是什么类型的:可以存放基本类型的变量,也可以存放对象。 对象或基本类型的变量被插入容器中时,实际插入的是对象或变量的一个复制品。 STL 中的许多算法(即函数模板&…

git/github使用完整教程(1)基础

安装git 在Linux上安装Git 首先输入git,看看系统有没有安装Git: $ git The program git is currently not installed. You can install it by typing: sudo apt-get install git像上面的命令,有很多Linux会友好地告诉你Git没有安装&#x…

git/github使用完整教程(2)分支

分支 首先,我们创建dev分支,然后切换到dev分支: $ git checkout -b dev Switched to a new branch devgit checkout命令加上-b参数表示创建并切换,相当于以下两条命令: $ git branch dev $ git checkout dev Switch…