数据结构的基本概念和术语总结
2022/2/3 23:47:21
本文主要是介绍数据结构的基本概念和术语总结,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
数据结构基本概念和术语
- (1)数据结构是啥?
- (2)数据结构的两个方面的内容
- 1.逻辑结构
- 2.存储结构
- 3.两者关系
- (3)抽象数据类型?
- (4)算法具有五个特性
- (5)算法分析的两个方面
- 1.时间复杂度
- 2.空间复杂度
导读:以C语言的数据结构学习总结为例
参考书:《数据结构(C语言)》 --严蔚敏
电子参考书:https://www.jb51.net/books/690409.html
(1)数据结构是啥?
Tips:数据结构其实就是研究如何更好、更快、更准确的组织数据的一种方法(也就是如何把数据用编程工具来组织起来,以便于操作数据)
数据结构: 是一门研究非数值计算程序设计中操作对象, 以及这些对象之间的关系和操作的学科。
(2)数据结构的两个方面的内容
1.逻辑结构
简单来说:逻辑结构就是理论上的东西,是抽象的计算方法
逻辑结构是从具体问题抽象出来的数学模型,从逻辑关系上描述数据,它与数据的存储无关。(当然无关,只是逻辑上说得通就行,跟实践关系不大)
根据数据元素之间关系的不同特性, 通常有四类基本逻辑结构:
- 集合结构
- 线性结构
- 树形结构
- 图状结构
2.存储结构
存储结构是逻辑结构在计算机中的存储表示,有两类存储结构:
- 顺序存储结构
- 链式存储结构
(这就是具体实现了)程序运行时,数据放在内存里,根据数据在内存分配地址连续还是离散的方式,顺序就是连续数据大块儿(用数组、或malloc()函数手动申请内存空间),链式就是离散的数据小块儿(用指针串联起来,或建立索引表)
3.两者关系
同一逻辑结构采用不同的 存储方法, 可以得到不同的存储结构。
(条条大路通罗马;实现的方式有多样)
(3)抽象数据类型?
抽象数据类型 是指由用户定义的、表示应用问题的数学模型 , 以及定义在这个模型上的 一组操作的总称, 具体包括三部分:数据对象、数据对象上关系的集合, 以及对数据对象的基本操作的集合。
(4)算法具有五个特性
- 有穷性
- 确定性
- 可行性
- 输入
- 输出
一个算法的优劣应该从以下四方面来评价
正确性、可读性、健壮性、高效性。
(5)算法分析的两个方面
算法分析考察算法的时间和空间效率。一般情况下, 鉴于运算空间较为充足, 故将算法的时间复杂度作为分析的重点。
1.时间复杂度
执行时间的数量级称为算法的渐近时间复杂度,T(n) = 0(/(n) ), 它表示随着问题规模n的增大, 算法执行时间的增长率和.f(n)的增长率相同, 简称时间复杂度。(使用同阶缩放比较)
2.空间复杂度
对千输入数据所占的具体存储量取于·问题本身,与算法无关,这样只需分析该算法在实现时所需要的辅助空间就可以了。
这篇关于数据结构的基本概念和术语总结的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南
- 2024-11-23JAVA项目部署入门:新手必读指南
- 2024-11-23Java项目部署入门:新手必看指南
- 2024-11-23Java项目部署入门:新手必读指南
- 2024-11-23Java项目开发入门:新手必读指南
- 2024-11-23JAVA项目开发入门:从零开始的实用教程
- 2024-11-23Java项目开发入门:新手必读指南