1.什么是数据结构? 数据+结构
相当于数组·,解决运行效率的问题 leetcode刷题网站
2.为什么要学习数据结构?
3.学什么
理论结合实际
算法
4.开发环境
逻辑结构:
1.线性结构 2.树形结构 3. 图形结构
线性表特点: 除第一个每一个元素都有唯一一个直接前驱
最后一个 直接后继
线性结构存储形式有两种:1.顺序结构 (理解成数组)2. 链式存储(俗称链表)
顺序表:元素之间不能有空
具备以下功能:初始化,插入,删除,查找,遍历,定位,前驱,后继
地址 容量 长度
头文件里函数声明一定要加分号!!!!!
初始化
struct SequenceList
{
int *date;
int length;
}
头文件调用
系统尖括号
自己“ ”
插入
最大位置长度+1 再往后就是不合法的
随机数:种子的基础上产生,种子不修改,一样的种子产生一样的随机数
设置种子:设置srand(time(NULL));
遍历顺序表
前驱和后继
销毁
堆空间释放掉,栈空间date成为野指针,给他空指针
顺序表的缺点
头部插入效率低
容量有限
优点:简单,访问效率高