1. 什么是数据结构?
数据结构:数据的逻辑结构、存储结构及操作。
1.1 数据相关
数据 数据元素 数据项 节点
(1)数据: 信息的载体,计算机的研究对象不再单纯是数值,研究的是数据间的关系及操作(运算)
(2)数据元素:数据元素是数据的基本单位,由若干个基本项组成(学号、姓名、班级、学院)
struct student
{
char name[20]; //数据项
int age;
float score;
}s1;
s1 //数据元素
(3)节点: 数据元素就叫节点。
1.2 逻辑结构(构思阶段,找规律)
(1)什么是逻辑结构?
数据与数据之间的联系和规律
(2)数据关系有哪些?
逻辑关系 特点 逻辑结构 应用
线性关系 一对一 线性结构 线性表(顺序表,链表(单向链表,单向循环链表,双向链表,双向循环链表),栈,队列)
层次关系 一对多 树状结构 树
网状关系 多对多 图状结构 图
1.3 存储结构(不同的存储结构,就是不同解题方法)
(1)什么是存储结构
概念:逻辑结构在计算机上的具体实现
(2)存储方法
1)顺序存储(数组、表)
顺组存储结构:在内存上是连续存储的
struct student s[100];
数据元素在按照一定的逻辑顺序存储于一段连续的存储空间上
连续的存储空间
2)链式存储
数据元素存储在存储器上的不同位置,通过地址(链指针)建立他们之间的联系
struct node_t
{
struct student data; //数据域
struct node_t *next; //指针域,指向下一个节点的指针
};
3)索引存储
索引存储 = 索引表 + 数据文件
举例:电话本
索引表 数据文件
姓氏 + 地址 姓名 + 电话号码
特点:提升查找速度
4)散列存储
数据元素的存储与关键码之间存在对应关系的查找技术
举例:存储年龄和人口数之间的对应关系
1.4 操作(运算)
对数据的操作: 增 删 改 查
图书管理系统
买了一本书
丢了一本书
一本书的信息录入错误了
别人来借书
1.5 数据结构总结
逻辑结构(前驱和后继):
逻辑关系 特点 逻辑结构 应用
线性关系 一对一 线性结构 线性表(顺序表,链表(单向链表,单向循环链表,双向链表,双向循环链表),栈,队列)
层次关系 一对多 树状结构 树
网状关系 多对多 图状结构 图
存储结构:
顺序存储结构:在内存当中是连续存储的
链式存储结构
索引存储结构
散列存储结构
在华清远见的数据结构课程刚开始,虽然难度很大,但是大家都在努力的学习,我也不能落后,加油!!!
为了跟美好的明天努力!!!