一、线性表
struct node{
int data;
struct node *next;
}//链表的定义
1、顺序存储和链式存储,
顺序存储元素地址连续、
链式表元素地址不连续
链表中第一个结点的存储位置(或者头节点的存储位置)叫做头指针,最后一个结点指针为“空”。
(没有头节点)
这俩图片很好看很明显
(有头节点)
(有头节点头指针->头节点->第一个节点)
不管带不带头结点,头指针始终指向链表的第一个结点,而头结点是带头结点链表中的第一个结点,结点内通常不存储信息,它是为了方便做的一种处理。
注意:头节点和第一个节点是不同意思,头节点在第一个节点之前.
2、头指针头节点区别
链表有头节点头指针是指向头节点的指针,(这里注意头指针不在头节点里,头指针指向头节点)
3、typedefy int Elemtype;typedef 类型定义标识符;意思是将int重新命名为Elemtype
#define ok 1;意思是用ok来代替1;
2、栈与队列
3、串
4、树
5、图
链表,栈,队列,二叉树,哈希表,堆