自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 数据结构之压缩矩阵

矩阵通常是非常庞大的数据结构,如果不采用压缩算法就会占据非常大的存储空间,而这在内存资源有限的设备上会导致程序崩溃和缓慢的运行速度。总之,学习压缩矩阵算法使我对数据结构和算法更加深入理解,同时也让我更加懂得如何运用算法实现高效的数据存储和处理。在了解每种算法的优缺点后,选择一个恰当的压缩矩阵算法就能极大地减少存储空间和内存使用,使程序更加高效运行。同时,学习压缩矩阵算法还让我深入了解了数组和链表这两种数据结构,以及它们如何在压缩矩阵算法中发挥作用。

2023-06-12 19:24:52 104

原创 数据结构 4.1: 串

其核心思想是将模式串和目标串进行匹配,在匹配失败时通过已经匹配成功的前缀和后缀字符相等的最大长度(即 next 数组)来快速调整匹配位置。在计算机科学中,字符串是一种基本且广泛使用的数据结构,串的操作是求子串、子序列、模式匹配、编辑距离等。3.串的操作:串的基本操作有求长度、求子串、子序列、模式匹配、编辑距离等。总之,串作为计算机科学中基础的数据结构之一,应用广泛,必须掌握其基本操作和常用算法,以应对实际问题的挑战。1,串的表示:串可以用字符数组来表示,也可以用字符串类来表示。一般采用后者表示法。

2023-06-12 18:46:11 55

原创 数据结构 图的遍历

DFS算法:深度优先搜索算法中,我们从一个节点开始,沿着一条路径不断访问下去,直到某个节点没有未访问的邻居节点为止。同时,遍历算法应该考虑到图中可能存在环路的情况,为此,可以将已访问的节点标记成“已访问”状态,并在遍历过程中检测当前访问的节点是否已经被访问过。学习总结:图的遍历是图算法中最为基础的操作之一,其目的是为了访问图中的所有节点,并能够对访问过的节点进行标记,便于下一步的操作。BFS从一个给定的节点开始,逐层访问节点,先访问当前节点的相邻节点,然后访问相邻节点的相邻节点,直到访问完所有节点。

2023-06-12 18:15:31 58

原创 数据结构 循环队列

循环队列是一种经典的数据结构,其实现中最重要的概念是“头指针”和“尾指针”,这两个指针用来指示循环队列的头和尾。循环队列的主要优点是可以在缓存区大小给定的情况下,最大化利用缓存区空间,从而提高缓存区利用效率。

2023-06-12 17:55:35 49

原创 数据结构 Prim 算法与 Dijkstra 算法

Prim算法和Dijkstra算法是图论中两种非常重要的最短路算法,它们的学习可以帮助我们更好的理解图论基础知识以及算法分析和设计的方法。

2023-06-12 17:41:58 34

原创 数据结构 二叉树的构建和遍历

二叉树是一种特殊的数据结构,它由一个根节点和两个子树组成,这两个子树分别是左子树和右子树。首先将根节点入队,然后对队列循环遍历,对于队列中的每个节点,分别构建出它的左子树和右子树,然后将它们依次入队。中序遍历的方式是先遍历左子树,然后输出根节点,最后遍历右子树。遍历是对二叉树进行深度搜索的过程,可以分为前序遍历、中序遍历和后序遍历三种方式。后序遍历的方式是先遍历左子树,然后遍历右子树,最后输出根节点。在后序遍历中,根节点永远是最后一个被访问的。前序遍历的方式是先输出根节点,然后再依次遍历左子树和右子树。

2023-06-12 17:12:44 26

原创 《哈夫曼树》

哈夫曼树是一种非常重要的数据结构,在计算机科学中有着广泛的应用,深入了解和掌握它对于提高自我计算机编程能力和算法设计能力具有很大的帮助,希望在以后的学习中可以更好的掌握。贪心算法:在构造哈夫曼树时,首先会选择权值小的,这样保证权值大的离根较近,这样一来,在计算树的代权路径长度时,自然会得到最小带权路径长度就是贪心算法的一种应用。(2)在森林F中选取两棵根节点的权值最小的树作为左右子树构造一棵新的二叉树,且置新的二叉树的根节点的权值为其左、右子树上根节点的权值之和。(1)根据给定的n个权值{w1,w2,…

2023-05-15 22:12:13 123

原创 数据结构 链队列

链队列是一种基于链表实现的队列,相比普通队列,它在插入和删除元素时无需移动其他元素,因此具有更好的效率。同时它的主要优点在于能够灵活地动态分配内存空间,从而避免因空间不足导致无法继续入队的问题。链队列是一种较为简单、高效的队列实现方式,适合在需要频繁进行入队和出队操作的场景中使用。学习总结:通过对链队列代码的敲写,加强了前面学习的链表和指针的知识。同时也学习了队列这个数据结构,也加强自己对代码规范的意识。

2023-04-24 20:13:36 37

原创 数据结构 栈的应用 -- 括号匹配

学习总结:通过学习括号匹配问题深入理解栈这一数据结构,对于我在算法和数据结构学习过程中也是一个重要的组成部分。通过掌握这个问题,可以便于我以后更加自如地处理其他类似的问题,提高编程能力和效率。同时在打代码的过程中加强了代码规范性的意识。括号匹配是我们在计算中经常遇到的事情,但对于长的式子我们人判断很慢,这是就要运用计算机来判断。

2023-04-24 13:27:56 33

原创 数据结构汉诺塔问题

学习总结:汉诺塔问题主要运用的是函数递归的思想。汉诺塔问题是一个优秀的递归算法示例,可以帮助我们加深对递归算法的理解。同时,在实际编程时,也可以借鉴类似的递归思路,解决其他复杂的问题。并且在汉诺塔问题中,我们可以通过递归三步来解决问题。这种方法看似简单,但却能够从最基础的情况出发,一步步缩小问题的规模,直到最终得到答案。这种思路的精髓在于将复杂的问题转化为简单的子问题,以提高问题求解的效率,并减少编程难度。

2023-04-19 21:56:30 225

原创 线性表的学习总结

四,自我学习总结:线性表是数据结构中最基本的一种结构,它由同类型的数据元素按照线性顺序排列而成。通过跟随老师的脚步抄写了老师顺序表单链表、静态链表、多项式加法的代码,通过抄写代码和老师对代码的讲解,对线性表的操作有一定的了解包括插入、删除、查找、遍历等等。并且对线性表的学习十分重要如栈和队列等数据结构都是基于线性表实现的,只有深入理解线性表的特性和操作方法,才能更好地理解这些数据结构。同时通过抄写闵帆老师的代码,提升了自己打代码的速度也加强了自己对代码规范的重视。顺序表的优点:存取的速度快。

2023-04-19 21:28:59 233

原创 数据结构 多项式的加法

学习和收获:多项式的加法是前面学习的单链表的应用,通过对多项式加法代码的抄写和学习,对前面学习的单链表的知识有了进一步加强,同时加深对算法时间复杂度分析的理解,例如如何计算多项式加法的时间复杂度,而且提升了实践编写代码,锻炼编程能力和解决实际问题的能力。并且自己对单链表的应用有了一定的了解和认识。展望:希望通过跟随闵帆老师的学习可以对链表结构有更加深刻的认识和掌握。

2023-04-10 23:31:35 49

原创 数据结构 静态链表

收获和总结:静态链表储存结构中的链式结构的代表,通过对静态链表的学习,让自己对链表有了一定新的认识和感悟。同时通过对闵帆老师代码的敲写,进一步认识到了代码格式规范的重要性,加强了对自己以后写代码格式规范的意识。对静态链表的学习,使自己的对数据结构的学习的进一步加强。静态链表的缺点:失去了顺序储存结构随机存取的特征,没有解决连续储存分配带来的表长难以确定的问题。展望:希望在以后跟随闵帆老师学习可以更好的掌握数据结构的知识,提升自己以后的编码能力。静态链表的优点:在插入和删除操作的时候,不需要移动元素。

2023-04-09 19:59:46 53 1

原创 《数据结构》第三次课的收获 单链表

收获总结:单链表是数据结构的储存结构中的链式结构的代表,通过对单链表的学习使我对数据结构的储存方式有了进一步的了解,更加充分的对链式结构有了了解。通过对闵帆老师代码的抄写,对代码的规范有了加强和提升了自己的编码能力。通过上了三次数据结构课,让我对数据结构这门学科有了进一步的了解,同时也产生了一定的兴趣。展望:希望在以后跟随闵帆老师学习可以更好的掌握数据结构的知识,提升自己的编码能力。单链表的优点:①不会浪费太多内存。函数2:初始化链表,将元素逐一插入。函数3:向指定位置插入。函数4:删除指定元素。

2023-03-29 21:09:40 87

原创 《数据结构》 2.1:顺序表

运行结果:

2023-03-28 00:42:11 47 1

原创 《数据结构第一次课收获》

(2)存储结构:通常要求既要存储各数据元素的数据,又要存储数据元素之间的逻辑关系。(2)数据元素是数据的基本单位,在计算机中通常作为一个整体进行考虑和处理。数据元素在计算机中有两种基本的存储结构,分别是顺序存储结构和链式存储结构。①顺序存储结构是借助元素在储存器中的相对位置来表示数据元素的关系,通常。1,初步的了解了数学模型为"线性""树"和"图"的数据结构。(4)数据对象是性质相同的数据元素的集合,是数据的一个子集。(1)逻辑结构:它与数据的储存无关,是独立于计算机的。(1)数据是客观事物的符号表示。

2023-03-22 21:02:58 63 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除