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

你可能感兴趣的文章
none 和 host 网络的适用场景 - 每天5分钟玩转 Docker 容器技术(31)
查看>>
None还可以是函数定义可选参数的一个默认值,设置成默认值时实参在调用该函数时可以不输入与None绑定的元素...
查看>>
NoNodeAvailableException None of the configured nodes are available异常
查看>>
Vue.js 学习总结(16)—— 为什么 :deep、/deep/、>>> 样式能穿透到子组件
查看>>
nopcommerce商城系统--文档整理
查看>>
NOPI读取Excel
查看>>
NoSQL&MongoDB
查看>>
NoSQL介绍
查看>>
NoSQL数据库概述
查看>>
Notadd —— 基于 nest.js 的微服务开发框架
查看>>
NOTE:rfc5766-turn-server
查看>>
Notepad ++ 安装与配置教程(非常详细)从零基础入门到精通,看完这一篇就够了
查看>>
Notepad++在线和离线安装JSON格式化插件
查看>>
notepad++最详情汇总
查看>>
notepad++正则表达式替换字符串详解
查看>>
notepad如何自动对齐_notepad++怎么自动排版
查看>>
Notes on Paul Irish's "Things I learned from the jQuery source" casts
查看>>
Notification 使用详解(很全
查看>>
NotImplementedError: Cannot copy out of meta tensor; no data! Please use torch.nn.Module.to_empty()
查看>>
NotImplementedError: Could not run torchvision::nms
查看>>