![](https://img-blog.csdnimg.cn/de1e19bb5ef547508efe6f2f13213ad0.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构
文章平均质量分 78
本栏包含本人对数据结构课程的总结
ProgramStack
研究方向:机器学习、深度学习、AIOT
展开
-
学习数据结构第6天(栈的基本概念)
栈(Stack)是一种基于先进后出(FILO)或者后进先出(LIFO)的数据结构,是一种只允许在一端进行插入和删除操作的特殊线性表。栈按照先进后出的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶,需要读数据的时候从栈顶开始弹出数据(最后一个数据被第一个读出来)。我们称数据进入到栈的动作为压栈(入栈),数据从栈中出去的动作称为弹栈(出栈)。栈顶(TOP):线性表允许进行插入删除的那一端。栈底(Bottom):固定的,不允许进行插入和删除的另一端。空栈:不含任何元素的空表。原创 2023-04-19 17:07:38 · 820 阅读 · 0 评论 -
学习数据结构第5天(线性表的链式表示)
线性表的链式存储结构(也称之为链表)的特点是逻辑关系上相邻的两个数据元素在物理位置上不一定是相邻的,换言之数据元素在存储器中的位置可以是任意的。为了表示每个数据元素aia_iai与其直接后继ai1a_i+1ai1之间的逻辑关系,对于数据元素aia_iai来说,除了存储其本身的信息外,还需存储一个能够保存直接后继的存储位置的指针,这两部分信息组成数据元素aia_iai的存储映像,我们称之为结点(node)。结点包含两个或者三个域存储数据元素信息的域叫做。原创 2023-04-16 17:45:13 · 398 阅读 · 0 评论 -
学习数据结构第4天(线性表的顺序表示)
线性表的顺序存储又称顺序表。顺序表是在计算机内存中以数组的形式保存的线性表,线性表的顺序存储时指用一组地址连续的存储单元,依次存储线性表中的各个元素。因此线性表中任一数据元素都可以随机存取,所以线性表的顺序存储结构是一种随机存取的存储结构。第一个元素存储在线性表的起始位置,数组下标为0,第i个元素存储在数组下标为i-1的位置。顺序表中元素的逻辑顺序与其物理顺序相同,且物理地址的相差为【数组下标的差 * sizeof(单个元素)】,例如:第一个数组的类型是char类型的数据,这个数组的第一个元素[原创 2023-04-15 11:19:22 · 756 阅读 · 0 评论 -
学习数据结构第3天(线性表的定义和基本操作)
线性表是算法题命题的重点。这类算法题实现比较容易且代码量较少,但是要求具有最优的性能(时间复杂度、空间复杂度),才能获得满分。因此应牢固掌握线性表的各种基本操作(基于两种存储结构),在平时的学习中多注重培养动手能力。另外,需要提醒的是,算法最重要的是思想。线性表是具有相同数据类型的n(n>=0)个元素的有限序列,其中n为表长,当n=0时线性表是一个空表。原创 2023-04-07 11:09:26 · 298 阅读 · 0 评论 -
学习数据结构第2天(算法的基本概念)
算法的时间复杂度不仅依赖于问题的规模n,也取决于待输入数据的性质(如输入数据元素的初始状态)。算法(Algorithm)是对特定问题求解步骤的一种描述,它是指令的有限序列,其中的每条指令表示一个或多个操作。算法中基本运算(最深层循环内的语句)的频度与T(n)同数量级,因此通常采用算法中基本运算的频度。算法的空间复杂度S(n)定义为该算法所耗费的存储空间,它是问题规模n的函数。一般总是考虑在最坏的情况下的时间复杂度,以保证算法的运行时间不会比它更长。,O的含义是T(n)的数量级,其严格的数学定义是:若。原创 2023-04-06 22:10:12 · 258 阅读 · 0 评论 -
学习数据结构第1天(数据结构的基本概念)
在任何问题中,数据元素都不是孤立存在的,他们之间存在某种关系,这种数据元素相互之间的关系称为结构。把逻辑上相邻的元素存储在物理位置上也相邻的存储单元中,元素之间的关系由存储单元的邻接关系来体现。数据是信息的载体,是描述客观事物属性的数、字符以及所有能输入到计算机中并被计算机程序识别和处理的符号的集合。数据是计算机程序加工的原料。:数据的逻辑结构和存储结构是密不可分的两个方面,一个算法的设计取决于所选定的逻辑结构,而算法的实现依赖于所采用的存储结构。数据对象是具有相同性质的数据元素的集合,是数据的一个子集。原创 2023-04-03 22:39:19 · 669 阅读 · 0 评论 -
数据结构(考研必备)
在实际编程中,数据结构是实现高效算法和程序的关键。因此,对于计算机科学和软件工程专业的学生和从事软件开发的工程师来说,学习数据结构是非常重要的。数据结构是计算机科学中的一个基本概念,它是指数据元素之间的关系以及对这些数据元素的操作,是计算机程序设计中不可或缺的一部分。数据结构可以用于描述和组织数据,使得数据的存储、检索和处理变得更加高效和方便。除此之外,掌握数据结构还可以培养我们的抽象思维能力、逻辑思维能力和问题解决能力,这些能力不仅对计算机科学专业有用,也对其他领域的学习和工作有益。原创 2023-03-29 12:28:25 · 514 阅读 · 0 评论