首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

编程字典-数据结构和算法概述

数据结构是一种组织数据以便有效使用数据的系统方法。以下术语是数据结构的基础术语。

接口- 每个数据结构都有一个接口。 Interface表示数据结构支持的操作集。接口仅提供支持的操作列表,它们可以接受的参数类型以及返回这些操作的类型。

实现- 实现提供数据结构的内部表示。 实现还提供了数据结构操作中使用的算法的定义。

数据结构的特征

正确性- 数据结构实现应正确实现其接口。

时间复杂度- 数据结构的运行时间或操作的执行时间必须尽可能小。

空间复杂性- 数据结构操作的内存使用应尽可能少。

需要数据结构

随着应用程序越来越复杂且数据越来越丰富,应用程序现在面临三个常见问题。

数据搜索- 考虑 一个商店的100万(10 6)件商品的库存。如果应用程序要搜索项目,则每次减慢搜索速度时,它必须搜索100万(10 6)个项目中的项目。随着数据的增长,搜索速度会变慢。

处理器速度- 处理器速度虽然非常高,但如果数据增长到数十亿条记录,则会受到限制。

多个请求- 由于成千上万的用户可以在Web服务器上同时搜索数据,因此即使快速服务器在搜索数据时也会失败。

为了解决上述问题,数据结构得以解决。可以在数据结构中组织数据,使得可以不需要搜索所有项目,并且几乎可以立即搜索所需数据。

执行时间案例

有三种情况通常用于以相对方式比较各种数据结构的执行时间。

最坏情况- 这是特定数据结构操作占用最多时间的情况。 如果操作的最坏情况时间是ƒ(n),那么此操作将不会超过ƒ(n)时间,其中ƒ(n)表示n的函数。

平均情况- 这是描述数据结构操作的平均执行时间的方案。 如果操作在执行中花费ƒ(n)时间,那么m次操作将花费mƒ(n)时间。

最佳案例- 这是描述数据结构操作的最少可能执行时间的场景。 如果操作在执行中花费ƒ(n)时间,则实际操作可能花费时间作为最大的随机数作为f(n)。

基本术语

数据- 数据是值或值集。

数据项- 数据项是指单个值单位。

组项目- 分为子项目的数据项称为组项目。

基本项目- 不能分割的数据项称为基本项目。

属性和实体- 实体是包含某些属性或属性的实体,可以为其指定值。

实体集- 类似属性的实体形成实体集。

Field- Field是表示实体属性的单个基本信息单元。

记录- 记录是给定实体的字段值的集合。

文件- 文件是给定实体集中实体的记录的集合。

原文:编程字典-

数据结构和算法(DSA)教程

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190817A0BCZX00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券