数据结构--基础知识

一、基本术语

数据元素:组成数据的、有一定意义的基本单位

数据项:一个数据元素可以由若干个数据项组成。是数据不可分割的最小单位

数据对象:性质相同的数据元素的集合。是数据的子集

数据结构:不同数据元素之间的关系

二、数据结构

1.逻辑结构:数据对象中数据元素之间的相互关系

集合结构:没有关系

线性结构:一对一

树形结构:一对多

图形结构:多对多

2.物理结构(存储结构):数据的逻辑结构在计算机中的存储形式

顺序存储结构:存储关系和逻辑关系一致

链式存储结构:存储关系和逻辑关系不一致

三、数据类型

原子类型:不可再分解的基本类型

结构类型:由若干个类型组合而成,可以再分解



四、算法:解决特定问题求解步骤的描述

1.算法的五个基本特性

输入、输出、有穷性、确定性、可行性

2.算法设计的要求

正确性、可读性、健壮性、时间效率高和存储量低

3.算法效率的度量方法

事后统计法、事前分析估算方法

4.算法的时间复杂度------大O记法

推导大O阶

1.用常数1取代运行时间中的所有加法常数

2.在修改后的运行次数函数中,只保留最高阶项

3.如果最高阶项存在且其系数不是1,则去除与这个项相乘的系数

得到的结果就是大O阶

5.算法的空间复杂度

五、参考

程杰 大话数据结构

相关推荐
似水এ᭄往昔9 小时前
【C++】--AVL树的认识和实现
开发语言·数据结构·c++·算法·stl
TL滕10 小时前
从0开始学算法——第十六天(双指针算法)
数据结构·笔记·学习·算法
天赐学c语言11 小时前
12.14 - 搜索旋转排序数组 && 判断两个结构体是否相等
数据结构·c++·算法·leecode
1024肥宅11 小时前
JavaScript 性能与优化:数据结构和算法
前端·数据结构·算法
仰泳的熊猫12 小时前
1112 Stucked Keyboard
数据结构·c++·算法·pat考试
he___H12 小时前
滑动窗口一题
java·数据结构·算法·滑动窗口
AI科技星12 小时前
统一场论质量定义方程:数学验证与应用分析
开发语言·数据结构·经验分享·线性代数·算法
学编程就要猛12 小时前
数据结构初阶:Map和Set接口
数据结构
jianfeng_zhu13 小时前
不带头节点的链式存储实现链栈
数据结构·算法
历程里程碑13 小时前
C++ 7vector:动态数组的终极指南
java·c语言·开发语言·数据结构·c++·算法