博客
关于我
数据结构考试知识点总结——绪论
阅读量: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/

你可能感兴趣的文章
PYQT.如何在QTableView中插入小部件
查看>>
PyQt4 代码在 PyQt5 (QHeaderView) 上不起作用
查看>>
PyQt4 到 PyQt5 ->mainFrame() 已弃用,需要修复才能加载网页
查看>>
PyQt4, class:mouseButtons用法
查看>>
PyQt4参考文档
查看>>
PyTorch Lightning:通过分布式训练扩展深度学习工作流
查看>>
PyQt5 - QThread:在线程仍在运行时被销毁
查看>>
PyQt5 - 如何从工作线程发出信号以通过 GUI 线程调用事件
查看>>
PyQt5 Designer 不工作:此应用程序无法启动,因为无法初始化 Qt 平台插件
查看>>
PyQt5 QLCNumber 没有更新
查看>>
PyQt5 TabWidget选项卡BarClicked TypeError:本机Qt信号不可调用
查看>>
PyQt5 从 PyQt4 转换信号代码
查看>>
PyQt5 和 asyncio:从永不完成的收益
查看>>
PyQt5 和 Django:如何使用 HTTP 请求(Multipart-form)上传图像?
查看>>
PyQt5 按钮运行功能和更新 LCD
查看>>
pyqt5 获取Qlabel中的图片并对其进行处理(包括Qimage转换为Mat)
查看>>
pyqt5 设置控件在最上层或者在下层
查看>>
pyqt5 设置网格布局的间距
查看>>
pyTorch Hub 系列#4:PGAN — GAN 模型
查看>>
PyQt5-基本窗口控件-QMainWindow
查看>>