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

你可能感兴趣的文章
Python mock 修补另一个函数调用的函数
查看>>
python mqtt 客户端实现
查看>>
Python Multiprocessing - 将类方法应用于对象列表
查看>>
Python multiprocessing.Queue 与 multiprocessing.manager().Queue()
查看>>
Python multiprocessing使用详解
查看>>
python mysql 基于 sqlalvhrmy_Python操作MySQL:pymysql和SQLAlchemy
查看>>
python mysql 布尔类型_python语言的基础学习:基本类型,函数,面向对象,模块,mysql数据库...
查看>>
Python NLP完整项目实战教程(1)
查看>>
Python NLP自然语言处理详解
查看>>
python nltk nltk_data 离线安装,chatterbot
查看>>
Redis 限流的 3 种方式,还有谁不会?
查看>>
Python这么慢,为啥大公司还在用?
查看>>
python note 06 编码方式
查看>>
python numba 转灰度图_使用NumPy、Numba的简单使用(二)
查看>>
Python Numpy 关于 linspace()函数 使用详解(全)
查看>>
Python numpy插入、读取至postgreSQL数据库中bytea类型字段
查看>>
Python numpy数据的保存和读取
查看>>
python numpy矩阵索引_python – 在2D numpy ndarray或numpy矩阵中获取前N个值的索引
查看>>
Python OCR库:自动化测试验证码识别神器!
查看>>
python opencv - 斑点检测或圆形检测
查看>>