当前位置: 首页 > news >正文

数据结构--线性表

数据结构分类

集合

线性结构(一对一)

树形结构(一对多)

图结构(多对多)

数据结构三要素

1、逻辑结构

2、数据的运算

3、存储结构(物理结构)

线性表分类

1、顺序表

2、链表

3、栈

4、队列

5、串

线性表--顺序表

顺序表的特点

顺序表的删除和插入

顺序表的查找

顺序表和数组的区别

1、顺序表和数组虽然都是用来存储线性表的数据结构,‌但它们之间存在一些关键的区别。

2、‌首先,‌数组的长度一旦定义,‌就是固定的,‌不能动态地增加或删除元素。‌相比之下,‌顺序表是活的,‌可以动态地增加或删除元素,‌这使得顺序表具有更大的灵活性。‌其次,‌数组通常用于存储静态数据,‌而顺序表则更多地用于处理动态数据,‌能够根据需要调整大小。‌

3、顺序表通常是通过数组来实现的,‌但它并不等同于数组。‌顺序表的实现基于数组,‌但提供了更多的操作选项和灵活性,‌使其成为一种更通用的数据结构。‌顺序表在物理存储上是以数组的形式保存线性表的元素,‌但在逻辑上,‌它提供了一组操作来动态地添加、‌删除元素,‌这些操作在数组中通常是不支持的1

线性表--单链表

单链表和顺序表的比较

单链表的定义

单链表的插入删除

单链表的查找

线性表--双链表

线性表--循环链表

循环单链表

循环双链表

顺序表和链表的比较

逻辑结构

存储结构

基本操作(增删查)

线性表--栈

栈的概念

顺序存储实现栈

链式存储实现栈

1、设计一个单链表,只允许在头部进行添加和删除

2、这样的链式存储最终可实现栈

线性表--队列

队列的概念

顺序存储实现队列

链式存储实现队列

线性表--双端队列

输入输出受限队列概念

输入受限的队列

输出受限的队列

线性表--串

串的概念

字符集编码

栈的应用

栈在括号匹配中的应用
表达式求值问题

表达式求值思路

栈在递归中的使用

像函数调用实际就是栈来管理的,会先执行最后入栈的函数

队列的使用

1、cpu的使用,如果有很多进程同时运行,会用队列来管理,先进入队列的先处理,然后再将其放入队尾,循环往复

http://www.lryc.cn/news/422816.html

相关文章:

  • 深入探针:PHP与DTrace的动态追踪艺术
  • 黑龙江日报报道第5届中国计算机应用技术大赛,赛氪提供赛事支持
  • 【计算机网络】LVS四层负载均衡器
  • Java 守护线程练习 (2024.8.12)
  • C#小桌面程序调试出错,如何解决??
  • Seatunnel Mysql数据同步到Mysql
  • Java Web —— 第五天(请求响应1)
  • 【LLMOps】手摸手教你把 Dify 接入微信生态
  • Ftrans文件摆渡方案:重塑文件传输与管控的科技先锋
  • LaTeX中的除号表示方法详解
  • DID、DID文档、VC、VP分别是什么 有什么关系
  • 网络安全应急响应
  • Qt数据和视图分离——中MCV和MVVM
  • 重定义变量类型:如#define FLOAT float和typedef float FLOAT的区别
  • Qt 使用阿里矢量图标库
  • 仓颉语言运行时轻量化实践
  • 深入理解Python中的subprocess模块
  • 从零开始搭建 EMQX 集群压测框架
  • ArkUI基本介绍
  • vue2+OpenLayers 天地图上打点并且显示相关的信息(2)
  • c++继承(二)
  • 低代码开发的崛起:机遇与挑战
  • Json-JacksonUtils工具类
  • svn客户端装完后没有svn.exe
  • TinyWebserver的复现与改进(4):主线程的具体实现
  • DaemonSet 不能帮助我们做什么事情?
  • 开源模型应用落地-LangChain高阶-记忆组件-RedisChatMessageHistory正确使用(八)
  • 解决Openwrt 串口默认是没有密码的方法
  • 【vue讲解:v-model 之 lazy、number、trim、与后端交互、小电影案例】
  • ECCV 2024 | 南洋理工三维数字人生成新范式:结构扩散模型