软考-数据库开发工程师-3.1-数据结构-线性结构

第3章内容比较多,内容考试分数占比较大,6分左右

线性表

1、线性表的定义

  一个线性表是n个元素的有限序列(n≥0),通常表示为(a1,a2, a3,…an).

2、线性表的顺序存储(顺序表)

  是指用一组地址连续的存储单元依次存储线性表中的数据元素,从而使得逻辑上相邻的两个元素在物理位置上也相邻,如下图所示:

优点:可以随机存取表中的元素,按序号查找元素的速度很快。

缺点:插入和删除操作需要移动元素。

3、线性表的链式存储(链表)

     是指用节点来存储数据元素,元素的节点地址可以连续,也可以不连续。节点空间只有在需要时才申请,无需事先分配。

优点:插入和删除操作不需要移动元素。

缺点:只能按顺序访问元素,不能进行随机存取。

链表的类别

栈和队列都是一种特殊的线性表,栈是按“后进先出”(或先进后出)的规则进行操作的。

(1)顺序栈:用一组地址连续的存储单元依次存储自栈顶到栈底的数据元素。如下图所示:

  • 存储空间是预先定义或申请的,因此可能会出现栈满的情况。
  • 每一个元素入栈时都要判断栈是否已满
  • 需要设置一个头指针指到栈顶。
  • 需要附设指针top指示栈顶元素的位置

(2)链栈:用链表存储栈中的元素。

  栈中元素的插入和删除仅在栈顶进行,因此不必设置头节点,链表的头指针就是栈顶指针,格式如下图所示:

队列

  • 队列是一种“先进先出”的线性表,队尾入队头出。
  • 队列的顺序存储:

(1)顺序队列:

(2)循环队列

  • 队列的链式存储(链队列)
  1.    为了便于操作,可以给链队列添加一个头节点,并令头指针指向头节点。
  2.    队列为空的判定条件就是头指针和尾指针的的值相同,并且均指向头节点。

  • 字符串是一串文字及符号的简称,是一种特殊的线性表。
  • 字符串的基本数据元素是字符,常常把一个串作为一个整体来处理。
  • 串是仅由字符构成的有限序列,是取值范围受限的线性表。一般记为S='a,a....a.',其中S是串名,单引号括起来的字符序列是串值。
  • 串长:即串的长度,指字符串中的字符个数。
  • 空串:长度为0的空串,空串不包含任何字符
  • 空格串:由一个或多个空格组成的串。
  • 子串:由串中任意长度的连续字符构成的序列称为子串
  • 串相等:指两个串长度相等且对应位置上的字符也相同。
  • 串比较:两个串比较大小时以字符的ASCII码值作为依据
  • 串的存储结构:

(1)顺序存储:用一组地址连续的存储单元来存储串值的字符序列。

(2)链式存储:字符串可以采用链表作为存储结构,当用链表存储串中的字符时,每个结点中可以存储一个字符,也可以存储多个字符。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

解锁数据潜能,永洪科技以数据之力简化中粮可口可乐决策之路

企业数字化转型是指企业利用数字技术和信息通信技术来改变自身的商业模式、流程和增值服务,以提高企业的竞争力和创新能力。数字化转型已经成为企业发展的重要战略,尤其在当前信息技术高速发展的时代。数字化转型还涉及到企业与消费者之间的互动和沟通。…

Vue 3 整合 WangEditor 富文本编辑器:从基础到高级实践

本文将详细介绍如何在 Vue 3 项目中集成 WangEditor 富文本编辑器,实现图文混排、自定义扩展等高阶功能。 一、为什么选择 WangEditor? 作为国内流行的开源富文本编辑器,WangEditor 具有以下优势: 轻量高效:压缩后仅…

游戏引擎学习第137天

演示资产系统中的一个 bug 我们留下了个问题,你现在可以看到,移动时它没有选择正确的资产。我们知道问题的原因,就在之前我就预见到这个问题会出现。问题是我们的标签系统没有处理周期性边界的匹配问题。当处理像角度这种周期性的标签时&…

监听 RabbitMQ 延时交换机的消息数、OpenFeign 路径参数传入斜杠无法正确转义

背景 【MQ】一套为海量消息和高并发热点消息,提供高可用精准延时服务的解决方案 我现在有一个需求,就是监听 RabbitMQ 一个延时交换机的消息数,而 RabbitTemplate 是不存在对应的方法来获取的。 而我们在 RabbitMQ 的控制台却可以发现延时交…

大数据学习(56)-Impala

&&大数据学习&& 🔥系列专栏: 👑哲学语录: 承认自己的无知,乃是开启智慧的大门 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言📝支持一下博主哦&#x1f91…

开发环境搭建-01.前端环境搭建

一.整体结构 Nginx目录必须放在没有中文的目录中才能正常运行!!!

Redis 常见数据类型

官方文档 RedisCommands 1)Redis 的命令有上百个,如果纯靠死记硬背比较困难,但是如果理解 Redis 的一些机制,会发现这些命令有很强的通用性。 2)Redis 不是万金油,有些数据结构和命令必须在特定场景下使用…

Redis7——进阶篇(三)

前言:此篇文章系本人学习过程中记录下来的笔记,里面难免会有不少欠缺的地方,诚心期待大家多多给予指教。 基础篇: Redis(一)Redis(二)Redis(三)Redis&#x…

云原生时代的技术桥梁

在数字化转型的大潮中,企业面临着数据孤岛、应用间集成复杂、高成本与低效率等问题。这些问题不仅阻碍了企业内部信息的流通和资源的共享,也影响了企业对外部市场变化的响应速度。当前,这一转型过程从IT角度来看,已然迈入云原生时…

ICLR 2025|香港浸会大学可信机器学习和推理课题组专场

点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入! AITIME 01 ICLR 2025预讲会团队专场 AITIME 02 专场信息 01 Noisy Test-Time Adaptation in Vision-Language Models 讲者:曹晨涛,HKBU TMLR Group一年级博士生,目前关注基础…

ProfibusDP主站转ModbusTCP网关如何进行数据互换

ProfibusDP主站转ModbusTCP网关如何进行数据互换 在现代工业自动化领域,通信协议的多样性和复杂性不断增加。Profibus DP作为一种经典的现场总线标准,广泛应用于工业控制网络中;而Modbus TCP作为基于以太网的通信协议,因其简单易…

016.3月夏令营:数理类

016.3月夏令营:数理类: 中国人民大学统计学院: http://www.eeban.com/forum.php?modviewthread&tid386109 北京大学化学学院第一轮: http://www.eeban.com/forum.php?m ... 6026&extrapage%3D1 香港大学化学系夏令营&a…

使用IDEA如何隐藏文件或文件夹

选择file -> settings 选择Editor -> File Types ->Ignored Files and Folders (忽略文件和目录) 点击号就可以指定想要隐藏的文件或文件夹

通过微步API接口对单个IP进行查询

import requests import json# 微步API的URL和你的API密钥 API_URL "https://api.threatbook.cn/v3/ip/query" API_KEY "***" # 替换为你的微步API密钥 def query_threatbook(ip):"""查询微步API接口,判断IP是否为可疑"…

第七节:基于Winform框架的串口助手小项目---协议解析《C#编程》

介绍 目标 代码实现 private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e){if (isRxShow false) return;// 1,需要读取有效的数据 BytesToReadbyte[] dataTemp new byte[serialPort1.BytesToRead];serialPort1.Read(dataTemp,0,dataTemp.Le…

关于tresos Studio(EB)的MCAL配置之GPT

概念 GPT,全称General Purpose Timer,就是个通用定时器,取的名字奇怪了点。定时器是一定要的,要么提供给BSW去使用,要么提供给OS去使用。 配置 General GptDeinitApi控制接口Gpt_DeInit是否启用 GptEnableDisable…

C语言基础要素(011):增量、减量运算

让变量自身加一或减一是一种常用的运算,C语言提供了增量与减量运算符支持这些操作。 增量运算() 让变量自身加1,可以这样实现: int size 3; size size 1; // 语句执行后 size 值为 4 size 1; // 语句执行后 size 值为 5使…

深入探索WebGL:解锁网页3D图形的无限可能

深入探索WebGL:解锁网页3D图形的无限可能 引言 。WebGL,作为这一变革中的重要技术,正以其强大的功能和广泛的应用前景,吸引着越来越多的开发者和设计师的关注。本文将深入剖析WebGL的核心原理、关键技术、实践应用,并…

Python +Anaconda,DeepSeeK API入门小例子

一、环境搭建 1.安装pycharm 、anaconda,deepseek官网申请api key(不会的去百度,申请完了可以充值几块钱,现在官网应该没有免费token可以测试了) 2.anaconda创建虚拟环境 ,打开windows dos界面依次输入 命令:1) con…

股指期货的交易时间是几点到几点?

股指期货是一种金融衍生品,简单来说,就是以股票指数(比如沪深300指数)为标的的期货合约。投资者可以通过买卖这些合约来对冲风险或者投机。它的交易方式和股票有点像,但又有自己的特点。 股指期货的交易时间是什么时候…