数据结构学习 Day 11

学习日记:现在是要全方位进入期末复习的备考了啊,这个学期还是做的不太好,把自己放在了一个很被动的地位,然后压力有点大,还有计算机二级完全没准备,也就是下个星期的事情了,哎,难受啊,但是其实如果从此时此刻好好抓紧时间,有条理地进行复习,其实是没问题的,简而言之,就好好加油吧,好好把心思放在学习上。

目录

链表

val



链表

  1. 链表是以节点的方式来存储,是链式存储
  2. 每个节点包含 data 域, next 域:指向下一个节点.
  3. 链表的各个节点不一定是连续存储.
  4. 链表分带头节点的链表和没有头节点的链表,根据实际的需求来确定

  1. 单向链表,查找的方向只能是一个方向,而双向链表可以向前或者向后查找。
  2. 单向链表不能自我删除,需要靠辅助节点 ,而双向链表,则可以自我删除,所以前面我们单链表删除时节点,总是找到 temp,temp 是待删除节点的前一个节点
  3. 双向链表的每个数据结点中都有两个指针,分别指向直接后继和直接前驱。所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点。

链表的存储方式

数组是在内存中是连续分布的,但是链表在内存中可不是连续分布的。

链表是通过指针域的指针链接在内存中各个节点。

所以链表中的节点在内存中不是连续分布的 ,而是散乱分布在内存中的某地址上,分配机制取决于操作系统的内存管理。


val

 val(字符表达式)

val()函数的功能为:将一组字符型数据的数字部分转换成相应的数值型数据

在C语言中Val是一个将由数字符号(包括正负号、小数点)组成的字符型数据转换成相应的数值型数据的函数,语法格式是Val(string)

val是一个用户自定义变量名称,这里应该是value的简写。

栈(stack)是限定仅在表尾进行插入或者删除的线性表。对于栈来说,表尾端称为栈顶(top),表头端称为栈低(bottom)。不含元素的空表称为空栈。因为栈限定在表尾进行插入或者删除,所以栈又被称为后进先出的线性表(简称LIFO:Last in, First out.结构)。

栈的基本操作主要有:栈的初始化、判空、判满、取栈顶元素、在栈顶进行插入和删除。在栈顶插入元素称为入栈,在栈顶删除元素称为出栈。

栈的存储空间为S(1:m),初始状态为top=m+1

表示栈的初始状态为空

你可能感兴趣的:(数据结构学习,学习,数据结构,链表)