数据结构复习指导之绪论(数据结构的基本概念)

news2024/11/26 15:38:48

文章目录

绪论:

考纲内容

知识框架

复习提示

1.数据结构的基本概念

1.1基本概念和术语

1.数据

2.数据元素

3.数据对象

4.数据类型

5.数据结构

1.2数据结构三要素

1.数据的逻辑结构

2.数据的存储结构

3.数据的运算


绪论:

考纲内容

算法时间复杂度和空间复杂度的分析与计算

知识框架

复习提示

本章内容是数据结构概述,并不在考研大纲中。读者可通过对本章的学习,初步了解数据结
构的基本内容和基本方法。分析算法的时间复杂度和空间复杂度是本草里点,而安热练孚握,昇法设计题通常都会要求分析时间复杂度、空间复杂度,同时会出现考查时间复杂度的选择题。

1.数据结构的基本概念

1.1基本概念和术语

1.数据

数据是信息的载体,是描述客观事物属性的数、字符及所有能输入到计算机中并被计算机程序识别和处理的符号的集合。数据是计算机程序加工的原料。


2.数据元素

数据是信息的载体,是描述客观事物属性的数、字符及所有能输入到计算机中并被计算机程序识别和处理的符号的集合。数据是计算机程序加工的原料。
 

3.数据对象

数据对象是具有相同性质的数据元素的集合,是数据的一个子集。例如,整数数据对象是集合N={0,±1,±2,…}。

4.数据类型

数据类型是一个值的集合和定义在此集合上的一组操作的总称。

1)原子类型:其值不可再分的数据类型。
2)结构类型:其值可以再分解为若干成分(分量)的数据类型。
3)抽象数据类型:一个数学模型及定义在该数学模型上的一组操作。它通常是对数据的某
种抽象,定义了数据的取值范围及其结构形式,以及对数据操作的集合。
 

5.数据结构

数据结构是相互之间存在一种或多种特定关系的数据元素的集合。在任何问题中,数据元
素都不是孤立存在的,它们之间存在某种关系,这种数据元素相互之间的关系称为结构(Structure)。数据结构包括三方面的内容:逻辑结构、存储结构和数据的运算。


数据的逻辑结构和存储结构是密不可分的两个方面,一个算法的设计取决于所选定的逻辑结构,而算法的实现依赖于所采用的存储结构。


1.2数据结构三要素

1.数据的逻辑结构

1)集合:结构中的数据元素之间除“同属一个集合”外,别无其他关系;

2)线性结构:结构中的数据元素之间只存在一对一的关系;

3)树形结构:结构中的数据元素之间存在一对多的关系;

4)图状结构或网状结构:结构中的数据元素之间存在多对多的关系;

2.数据的存储结构

存储结构是指数据结构在计算机中的表示(又称映像),也称物理结构。它包括数据元素的表示和关系的表示。数据的存储结构是用计算机语言实现的逻辑结构,它依赖于计算机语言。数据的存储结构主要有顺序存储、链式存储、索引存储和散列存储。


1)顺序存储。把逻辑上相邻的元素存储在物理位置上也相邻的存储单元中,元素之间的关系由存储单元的邻接关系来体现。其优点是可以实现随机存取,每个元素占用最少的存储空间;缺点是只能使用相邻的一整块存储单元,因此可能产生较多的外部碎片。

2)链式存储。不要求逻辑上相邻的元素在物理位置上也相邻,借助指示元素存储地址的指针来表示元素之间的逻辑关系。其优点是不会出现碎片现象,能充分利用所有存储单;缺点是每个元素因存储指针而占用额外的存储空间,且只能实现顺序存取。

3)索引存储。在存储元素信息的同时,还建立附加的索引表。索引表中的每项称为索引项,
索引项的一般形式是(关键字,地址)。其优点是检索速度快;缺点是附加的索引表额外占用存储空间。另外,增加和删除数据时也要修改索引表,因而会花费较多的时间。

4)散列存储。根据元素的关键字直接计算出该元素的存储地址,又称哈希(Hash)存储。
其优点是检索、增加和删除结点的操作都很快;缺点是若散列函数不好,则可能出现元素存储单元的冲突,而解决冲突会增加时间和空间开销。


 

3.数据的运算

施加在数据上的运算包括运算的定义和实现。运算的定义是针对逻辑结构的,指出运算的功能;运算的实现是针对存储结构的,指出运算的具体操作步骤。
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1590949.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

jdk和Eclipse软件安装与配置(保姆级别教程)

目录 1、jdk的下载、安装、配置 1.1 jdk安装包的的下载地址:Java Archive | Oracle ,点击进入,然后找到你想要的版本下载,如下图: 2.1 开始下载,如下图: 3.1 登入Oracle账号就可以立即下载了…

开发有哪些常见陷阱?

引言 在当今数字化时代,软件开发已成为推动科技进步和商业发展的重要引擎。然而,软件开发并非一帆风顺,其中蕴藏着许多陷阱和挑战。如何避免这些陷阱,提高软件开发的效率和质量,成为开发者们面临的重要问题 本文将深…

redis-缓存穿透与雪崩

一,缓存穿透(查不到) 在默认情况下,用户请求数据时,会先在缓存(Redis)中查找,若没找到即缓存未命中,再在数据库中进行查找,数量少可能问题不大,可是一旦大量的请求数据&a…

谷歌google浏览器无法更新Chrome至最新版本怎么办?浏览器Chrome无法更新至最新版本

打开谷歌google浏览器提示:无法更新Chrome,Chrome无法更新至最新版本,因此您未能获得最新的功能和安全修复程序。点击「重新安装Chrome」后无法访问此网站,造成谷歌浏览器每天提示却无法更新Chrome至最新版本。 谷歌google浏览器无…

开源AI项目:合同检查流程优化,提高工作效率与准确性

合同检查是企业法务管理中的重要环节,它不仅关系到企业合规经营,还直接影响到企业的经济效益和风险控制。随着人工智能技术的不断发展,AI在合同管理领域的应用逐渐成为提高工作效率和准确性的有效手段。本文将探讨如何结合AI技术,…

构建智能连接的未来:物联网平台系统架构解析

随着科技的不断进步和互联网的普及,物联网(Internet of Things, IoT)已成为连接世界的新方式。物联网平台作为实现物联网应用的核心基础设施,其系统架构的设计和实施至关重要。本文将深入探讨物联网平台系统架构的关键要素和最佳实…

MySQL高级--14--group by 分组取时间最新的一条数据

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 group by 分组取时间最新的一条数据数据准备错误查询分析错误原因解决思路: 实现方法一(使用 LIMIT 查询)实现方法二&#xff08…

电子章是怎么盖上去的?

电子章是怎么盖上去的呢,本文介绍利e-章宝(易友EU3000智能盖章软件)盖电子骑缝章的方法。如下: 1.在软件中导入待批量盖章的PDF文件 如下图,在“待盖章PDF文件”区域,点“添加”,导入待盖章PDF文件。 如上图&#xf…

Linux第89步_了解异步通知及其结构和函数

1、了解“异步通知” “异步通知”的核心就是信号。信号是采用软件模拟的“中断”,它由“驱动程序”主动向“应用程序”发送信号,并报告自己可以访问了,“应用程序”收到信号以后,就从“驱动设备”中读取或者写入数据。整个过程就…

npm install 报 ERESOLVE unable to resolve dependency tree 异常解决方法

问题 在安装项目依赖时,很大可能会遇到安装不成功的问题,其中有一个很大的原因,可能就是因为你的npm版本导致的。 1.npm ERR! code ERESOLVE npm ERR! ERESOLVE unable to resolve dependency tree 2.ERESOLVE unable to resolve dependenc…

赋能未来:AI技术革新中的创业契机

目录 前言 一、行业解决方案 1、行业参考说明 2、操作步骤建议 二、智能产品和服务 1、行业参考说明 2、操作步骤建议 三、教育和培训 1、行业参考说明 2、操作步骤建议 总结 前言 随着人工智能(AI)技术的快速发展,越来越多的创业…

高质量ChatGPT Prompts 精选

通用超级 Prompt GPT4实用。通用超级 prompt ,根据你想要的输出和你的反馈,自动使用相应的专家角色帮你解决问题。如果需要升级ChatGPT Plus,可以参考教程 升级 GPT4.0 保姆教程 您是一位具有多领域专长的专家级ChatGPT提示工程师。在我们…

IP证书申请流程

目录 域名与IP的关系 SSL证书绑定域名还是绑定IP? IP证书支持免费申请吗? 如何申请IP地址证书 IP类型的SSL证书,又称之为IP SSL,这种SSL证书是专门用于公网IP地址验证的一种数字证书。 主要功能就是解决IP地址明文传输的安全…

【JAVA基础篇教学】第八篇:Java中List详解说明

博主打算从0-1讲解下java基础教学,今天教学第八篇:Java中List详解说明。 在 Java 编程中,List 接口是一个非常常用的集合接口,它代表了一个有序的集合,可以包含重复的元素。List 接口提供了一系列操作方法,…

Pytorch: 利用预训练的残差网络ResNet50进行图像特征提取,并可视化特征图热图

1. 残差网络ResNet的结构 2.图像特征提取和可视化分析 import cv2 import time import os import matplotlib.pyplot as plt import torch from torch import nn import torchvision.models as models import torchvision.transforms as transforms import numpy as npimgname…

Windows 2003 R2与Windows 2022建立域信任报错:本地安全机构无法跟域控制器获得RPC连接。请检查名称是否可以解析,服务器是否可用。

在Windows Server 2003 R2与Windows Server 2022之间建立域信任时遇到“本地安全机构无法与域控制器获得RPC连接”的错误,可能是由于以下几种原因: DNS 解析问题: 确保源域和目标域的DNS配置正确,能够互相解析对方的域名和IP地址。…

Kubernetes学习笔记12

k8s核心概念:控制器: 我们删除Pod是可以直接删除的,如果生产环境中的误操作,Pod同样也会被轻易地被删除掉。 所以,在K8s中引入另外一个概念:Controller(控制器)的概念,…

搭建个人智能家居 4 -WS2812B-RGB灯

搭建个人智能家居 4 - WS2812B-RGB灯 前言说明ESPHomeHomeAssistant 前言 上一篇文章我们已经完成了第一个外设的添加(一个LED灯),今天接着来“壮大”这个系统,添加第二个外设“RGB灯”。 环境搭建可以回顾前面的文章。前文回顾&…

界面控件DevExtreme JS ASP.NET Core 2024年度产品规划预览(二)

在本文中我们将介绍今年即将发布的v24.1附带的主要特性,这些特性既适用于DevExtreme JavaScript (Angular、React、Vue、jQuery),也适用于基于DevExtreme的ASP.NET MVC/Core控件。 注意:本文中列出的功能和特性说明官方当前/预计的发展计划&a…

PrimeKG:为精准医学分析设计的多模态知识图谱

PrimeKG:为精准医学分析设计的多模态知识图谱 PrimeKG简介数据资源和覆盖范围构建方法和技术细节PrimeKG多模态知识图谱的概览构建PrimeKG的过程PrimeKG 数据 多模态特性和临床应用PrimeKG 设计逻辑 论文:https://www.nature.com/articles/s41597-023-01…