程序=算法+数据
算法:排序,查找,匹配("abchelloabc"),栈,队列
数据的存储结构:物理结构,逻辑结构
物理结构:顺序存储(数组) int buf[41]
优点:访问元素方便快速,不能动态增长或删除元素
链式存储:多个元素在内存中地址可能互不相连,每个元素之间通过地址相联系 (*)
逻辑结构:元素之间的一种关系
散列:元素之间没有任何关系(联系)
线性表:(1:1)每个元素都只能最多有一个直接后驱和一上直接前驱(头节点是没有直接驱,尾结点是没有直接后驱)
矢量:单向,双向,循环的
树状图:(1:N)每个节点可能存储多个子节点,但每个节点只能有一个父结点
图形结构:(N:N)每个节点都存在多个联系
线性表:1:1
按物理结构划分:顺序线性表,链式线性表
顺序线性表:数组
链式线性表:
1。单向:
struct Node
{
data;//信息
地址
};
2、双向:
3、循环:
头结点(指针):由于每个元素之间存在1:1的联系,只需要存储第一个元素的地址即可。
插入结点:头插法:每次将新增加的节点插入到链表的头部
尾插法:
work:
1、合并两支链表
//合并两个链表,返回出一个新的链表。
pLink combine(pLink like1,pLink like2)
算法:排序,查找,匹配("abchelloabc"),栈,队列
数据的存储结构:物理结构,逻辑结构
物理结构:顺序存储(数组) int buf[41]
优点:访问元素方便快速,不能动态增长或删除元素
链式存储:多个元素在内存中地址可能互不相连,每个元素之间通过地址相联系 (*)
逻辑结构:元素之间的一种关系
散列:元素之间没有任何关系(联系)
线性表:(1:1)每个元素都只能最多有一个直接后驱和一上直接前驱(头节点是没有直接驱,尾结点是没有直接后驱)
矢量:单向,双向,循环的
树状图:(1:N)每个节点可能存储多个子节点,但每个节点只能有一个父结点
图形结构:(N:N)每个节点都存在多个联系
线性表:1:1
按物理结构划分:顺序线性表,链式线性表
顺序线性表:数组
链式线性表:
1。单向:
struct Node
{
data;//信息
地址
};
2、双向:
3、循环:
头结点(指针):由于每个元素之间存在1:1的联系,只需要存储第一个元素的地址即可。
插入结点:头插法:每次将新增加的节点插入到链表的头部
尾插法:
work:
1、合并两支链表
//合并两个链表,返回出一个新的链表。
pLink combine(pLink like1,pLink like2)