数据结构是一种组织数据以便有效使用数据的系统方法。以下术语是数据结构的基础术语。
接口- 每个数据结构都有一个接口。 Interface表示数据结构支持的操作集。接口仅提供支持的操作列表,它们可以接受的参数类型以及返回这些操作的类型。
实现- 实现提供数据结构的内部表示。 实现还提供了数据结构操作中使用的算法的定义。
数据结构的特征
正确性- 数据结构实现应正确实现其接口。
时间复杂度- 数据结构的运行时间或操作的执行时间必须尽可能小。
空间复杂性- 数据结构操作的内存使用应尽可能少。
需要数据结构
随着应用程序越来越复杂且数据越来越丰富,应用程序现在面临三个常见问题。
数据搜索- 考虑 一个商店的100万(10 6)件商品的库存。如果应用程序要搜索项目,则每次减慢搜索速度时,它必须搜索100万(10 6)个项目中的项目。随着数据的增长,搜索速度会变慢。
处理器速度- 处理器速度虽然非常高,但如果数据增长到数十亿条记录,则会受到限制。
多个请求- 由于成千上万的用户可以在Web服务器上同时搜索数据,因此即使快速服务器在搜索数据时也会失败。
为了解决上述问题,数据结构得以解决。可以在数据结构中组织数据,使得可以不需要搜索所有项目,并且几乎可以立即搜索所需数据。
执行时间案例
有三种情况通常用于以相对方式比较各种数据结构的执行时间。
最坏情况- 这是特定数据结构操作占用最多时间的情况。 如果操作的最坏情况时间是ƒ(n),那么此操作将不会超过ƒ(n)时间,其中ƒ(n)表示n的函数。
平均情况- 这是描述数据结构操作的平均执行时间的方案。 如果操作在执行中花费ƒ(n)时间,那么m次操作将花费mƒ(n)时间。
最佳案例- 这是描述数据结构操作的最少可能执行时间的场景。 如果操作在执行中花费ƒ(n)时间,则实际操作可能花费时间作为最大的随机数作为f(n)。
基本术语
数据- 数据是值或值集。
数据项- 数据项是指单个值单位。
组项目- 分为子项目的数据项称为组项目。
基本项目- 不能分割的数据项称为基本项目。
属性和实体- 实体是包含某些属性或属性的实体,可以为其指定值。
实体集- 类似属性的实体形成实体集。
Field- Field是表示实体属性的单个基本信息单元。
记录- 记录是给定实体的字段值的集合。
文件- 文件是给定实体集中实体的记录的集合。
原文:编程字典-
数据结构和算法(DSA)教程
领取专属 10元无门槛券
私享最新 技术干货