一、计算机数据结构大纲
1数据结构基本概念与算法基础
2线性表
3栈、队列和数组
4树与二叉树
5 图
二、肉眼看识文件 -火绒杀毒软件分析
以火绒杀毒软件讲解数据结构的文件格式,
火绒的网络检测UI文件:NetDiag.ui
记事本打开:
用肉眼我们可以发现红色标记位置是压缩文件标识
三、解压文件
通过上一步我们可用看到是压缩文件,我们直接解压
四、知识点
1. 基本概念:
- 文件:文件是性质相同的记录的集合。存储在外存中的大量记录构成了文件,是数据的一种组织和存储形式。
- 记录:记录是文件中存取的基本单位,由一个或多个数据项组成。数据项有时也称为字段,是文件可使用的最小单位。
- 关键字:其值能唯一标识一个记录的数据项或数据项的组合称为主关键字;其他不能唯一标识一个记录,但有助于对记录进行分类或检索的数据项则称为次关键字。
2. 文件的逻辑结构:
- 逻辑结构的定义:文件中各记录之间存在着逻辑关系,这是记录在用户或应用程序员面前呈现的方式,是用户对数据的表示和存取方式。
- 逻辑结构的分类:
- 顺序结构:当一个文件的各个记录按照某种次序排列起来时,记录之间就自然地形成了一种线性关系。顺序文件中,若记录按其主关键字有序,则为顺序有序文件,否则为顺序无序文件。
3. 文件的物理结构:
- 物理结构的定义:文件的物理结构是数据在物理存储器上存储的方式,是数据的物理表示和组织。其目的是提高存储空间的利用率和减少存取记录的时间。
- 物理结构的分类:
- 顺序组织:记录按顺序存储在存储介质上,物理顺序与逻辑顺序一致。顺序文件可以是连续的(次序相继的两个物理记录在存储位置上相邻),也可以是串联的(物理记录之间的次序由指针相链表示)。
- 随机组织:根据记录的关键字或记录号等信息,通过特定的算法计算出记录的存储位置,以便快速随机访问。
- 链组织:记录之间通过指针链接起来,形成链表结构,不要求逻辑上相邻的记录在物理位置上也相邻。
4. 文件的操作:
- 检索操作:包括顺序存取(按记录的逻辑顺序依次存取)、直接存取(根据记录序号或相对位置进行存取)、按关键字存取(给定一个值,查询关键字与给定值相关的记录)等。对于数据库文件,还存在简单询问、区域询问、函数询问、布尔询问等查询方式。
- 修改操作:包括插入一个记录、删除一个记录和更新一个记录。文件的操作可以有实时和批量两种不同方式。
五、数据结构应用行业
序号 | 行业 | 场景 |
1 | 数据存储 | 数据结构用于存储和区分数据结构 |
2 | 数据安全 | 特殊数据按照结构化加密传输,封包,网络传输 |
3 | 杀毒软件 | 扫描系统进程,磁盘文件,通过文件结构解包,检测文件结构是否包含恶意代码 |
4 | 网安单位 | 通过解包网络数据包,探测上网用户是否包含恶意信息,恶意用途,恶意数据,不该出口数据 |
5 | 数据恢复 | 通过数据结构,数据块快速恢复数据,例如相机,电脑硬盘,手机 |
6 | 云计算 | 通过特殊数据结构,将可能危害的数据放于独立系统,沙箱 |
7 | 文件归档 | 现在信息发展,大量文件,熟悉 数据结构有利于数据归档 |
8 | AI人工智能 | 数据结构分类后更方便AI读取和分析 |
六、阿雪技术观
拥抱开源与共享,见证科技进步奇迹,畅享人类幸福时光!
让我们积极投身于技术共享的浪潮中,不仅仅是作为受益者,更要成为贡献者。无论是分享自己的代码、撰写技术博客,还是参与开源项目的维护和改进,每一个小小的举动都可能成为推动技术进步的巨大力量