博客
关于我
数据结构考试知识点总结——绪论
阅读量:339 次
发布时间:2019-03-04

本文共 944 字,大约阅读时间需要 3 分钟。

数据结构被形式地定义为(D, R),其中D是数据元素的有限集合,R是D上数据元素间关系的有限集合。

数据结构包括数据的逻辑结构、数据的存储结构和数据的运算三个方面的内容。

数据结构按逻辑结构可分为线性结构和非线性结构两大类。

数据结构按逻辑结构可分为四小类:集合、线性结构、树形结构和图形结构。

集合结构的元素之间无关系,线性结构的元素之间关系一对一,树形结构中元素间关系一对多,图形结构中元素间关系多对多。

线性结构中,第一个结点无前驱结点,最后一个结点无后续结点,其余结点有一个前驱结点和一个后续结点。

树形结构中,树根结点无前驱结点,叶子结点无后续结点,其余结点有一个前驱结点和一个及以上后续结点。

图形结构中,每个结点的前驱结点和后续结点都可以有多个。

4种常用的存储结构类型:1. 顺序 2. 链式 3. 散列/哈希 4. 索引。

最常用的5种数据运算:1. 插入 2. 删除 3. 修改 4. 查找 5. 排序。

一个算法的效率可分为空间效率和时间效率。

数据结构是讨论数据的逻辑结构和存储结构,以及它们之间的相互关系,并对这种结构定义相应的操作,设计出相应的算法。

应用软件指专门为某一目的而编制的软件。

数据结构中,与所使用的计算机无关的是数据的逻辑结构。

算法设计应该满足5个目标:1. 正确性 2. 可使用性 3. 可读性 4. 健壮性 5. 高效率与低存储量需求。

算法分析的目的是分析算法的效率以求改进。

算法必须具备1. 输入 2. 输出 3. 可行性 4. 确定性 5. 有穷性。

算法的可行性是指每一条指令都应在有限的时间内完成。

一个递归算法必须包括终止条件和递归部分。

算法的时间效率复杂度由小到大排序:c < log2N < n < n * Log2N < n^2 < n^3 < 2^n < 3^n < n!

连续存储设计时,存储单元的地址一定连续。

算法的时间复杂度是指该算法所求解问题频度的函数。

数据结构是针对非数值计算的程序设计问题产生的。

数据结构是指数据的组织形式。

计算机内部处理的基本单元是数据元素。

算法的时间复杂度取决于问题的规模和待处理数据的初始状态。

存储数据时,通常不仅要存储个数据元素的值,而且还要存储数据元素之间的关系。

转载地址:http://fpeq.baihongyu.com/

你可能感兴趣的文章
Pyinstaller依赖项的许可证
查看>>
PyInstaller可执行文件找不到包含的flASK-COMPRESS
查看>>
Pyinstaller和海运
查看>>
PyInstaller图标选项在Mac上不起作用
查看>>
pyinstaller的使用
查看>>
pyinstaller超级加密 (加壳和转c)
查看>>
pyinstaller错误:OSError:找不到Python库:libpython3.4mu.so.1.0、libpython3.4m.so.1.0、libpython3.4.so.1.0
查看>>
Pyinstaller:‘;Fiona‘;没有属性‘;_loading‘;(很可能是由于循环导入)
查看>>
pyinstaller:更改应用程序图标
查看>>
Pylint“未解决的导入“;Visual Studio 代码中的错误
查看>>
pyLoad远程代码执行漏洞复现(CVE-2023-0297)
查看>>
pymongo update_one(),upsert=True,不使用$运算符
查看>>
pymongo 中的快速或批量更新
查看>>
pymongo删除操作
查看>>
PyMongo按多个关键点分组
查看>>
Pympress:强大的双屏PDF阅读器
查看>>
pymysql.err.InternalError: (1054, "Unknown column '27D24A3B' in 'where clause'")之错误解决
查看>>
pymysql.err.OperationalError: (1364, “Field ‘id‘ doesn‘t have a default value“)
查看>>
Pytorch Tensor 维度操作的形象理解 Tensor.unsqueeze() Tensor.squeeze()
查看>>
PyMySQL库对Mysql数据库进行增删改查与工具类封装
查看>>