![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构与算法代码内容
文章平均质量分 89
大鱼-
这个作者很懒,什么都没留下…
展开
-
【尚硅谷】数据结构与算法——线索化二叉树
跟着B站的尚硅谷学习数据结构与算法,语言为java,目前是第十四个代码内容——线索化二叉树尚硅谷——线索化二叉树1)n 个结点的二叉链表中含有 n+1 [ 公式:2n - ( n - 1) = n + 1 ] 个空指针域。利用二叉链表中的空指针域,存放指向结点在某种遍历次序下的前驱和后继结点的指针(这种附加的指针称为“ 线索 ”)2)这种加上了线索的二叉链表称为线索链表,相应的二叉树称为线索二叉树(Threaded BinaryTree)。根据线索性质的不同,线索二叉树可分为前序线索二叉树。原创 2023-04-21 22:47:11 · 497 阅读 · 1 评论 -
【尚硅谷】数据结构与算法——顺序存储二叉树
跟着B站的尚硅谷学习数据结构与算法,语言为java,目前是第十三个代码内容——顺序存储二叉树尚硅谷——顺序存储二叉树以上就是本章要讲的内容,本文仅仅简单复述了老师讲课的文本内容,内容有误麻烦联系。原创 2023-04-20 16:07:22 · 235 阅读 · 0 评论 -
【尚硅谷】数据结构与算法——二叉树
跟着B站的尚硅谷学习数据结构与算法,语言为java,目前是第十一个代码内容——哈希表尚硅谷——二叉树以上就是本章要讲的内容,本文仅仅简单复述了老师讲课的文本内容,内容有误麻烦联系。原创 2023-04-08 19:23:46 · 370 阅读 · 0 评论 -
【尚硅谷】数据结构与算法——哈希表
跟着B站的尚硅谷学习数据结构与算法,语言为java,目前是第十一个代码内容——哈希表尚硅谷——哈希表散列表(Hash table,也叫哈希表),是根据关键码值(key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。以上就是本章要讲的内容,本文仅仅简单复述了老师讲课的文本内容,内容有误麻烦联系。原创 2023-03-25 15:48:58 · 81 阅读 · 0 评论 -
【尚硅谷】数据结构与算法——查找算法
在Java中,我们常用的查找方式有四种:1)顺序(线性)查找2)二分查找 / 折半查找3)插值查找4)斐波那契查找。原创 2023-03-24 18:12:15 · 376 阅读 · 0 评论 -
【尚硅谷】数据结构与算法——排序算法2.0
跟着B站的尚硅谷学习数据结构与算法,语言为java,目前是第九个代码内容——递归尚硅谷——排序算法2.0冒泡排序(Bubble Sorting)的基本思想是:通过对待排序序列从前向后(从下标较小的元素开始),依次比较相邻元素的值,若发现逆序交换,使值较大的元素逐渐从前移向后部,就像水底下的水泡一样逐渐往上冒。因为排序的过程中,各元素不断接近自己的位置,如果一趟比较下来没有进行交换,就说明序列有序,因此要在排序过程中设置一个标志 flag 判断元素是否进行过交换。从而减少不必要的比较。原创 2023-03-13 14:55:29 · 452 阅读 · 0 评论 -
【尚硅谷】数据结构和算法——排序算法1.0
跟着B站的尚硅谷学习数据结构与算法,语言为java,目前是第九个代码内容——递归尚硅谷——排序算法1.0排序也称为排序算法(Sort Algorithm),排序是将一组数据,依指定的顺序进行排列的过程。1)类似于时间复杂度的讨论,一个算法的空间复杂度(Space Complexity)定义为该算法所消耗的存储空间,它也是问题规模 n 的函数。2)空间复杂度(Space Complexity)是对一个算法在运行过程中临时占用存储空间大小的度量。原创 2023-03-06 21:29:18 · 345 阅读 · 0 评论 -
【尚硅谷】数据结构和算法——递归
跟着B站的尚硅谷学习数据结构与算法,语言为java,目前是第八个代码内容——递归尚硅谷——递归看个实际应用场景,迷宫问题(回溯),递归(Recursion)原创 2023-03-05 12:31:59 · 312 阅读 · 0 评论 -
【尚硅谷】数据结构和算法——前缀、中缀、后缀表达式规则
1)前缀表达式又称波兰式,前缀表达式的运算符位于操作符之前。2)举例说明:(3+4)*5-6 对应的前缀表达式就是 - * + 3 4 5 6前缀表达式的计算机求值:从右至左扫描表达式,遇到数字时,将数字压入堆栈,遇到运算符时,弹出栈顶的两个数,用运算符对它们做相应的计算(栈顶元素 和 次顶元素),并将结果入栈;重复上述过程直到表达式最左端,最后运算得到的值即为表达式的结果。例如:(3+4)*5-6 对应的前端表达式就是 - * + 3 4 5 6,针对前缀表达式求值步骤如下:1)从右到左。原创 2023-03-02 21:26:16 · 2585 阅读 · 0 评论 -
【尚硅谷】数据结构和算法——栈
跟着B站的尚硅谷学习数据结构与算法,语言为java,目前是第四个代码内容——双向链表尚硅谷——栈1)栈的英文为(stack)2)栈是一个先进后出(FILO-FIRST In Last Out)的有序列表。3)栈(stack)是限制线性表中元素的插入和删除只能在线性表的同一端进行的一种特殊线性表。允许插入和删除的一端,为变化的一端,称为栈顶,另一端为固定的一端,称为栈底。原创 2023-02-28 20:23:34 · 274 阅读 · 0 评论 -
【尚硅谷】数据结构和算法——单向环形链表
Josephu 问题为:设编号为1,2,...,n 的 n 个人围坐一圈,约定编号为 k(1原创 2023-02-25 00:01:52 · 221 阅读 · 0 评论 -
【尚硅谷】数据结构和算法——双向链表
使用带 head 头的双向链表实现——水浒英雄排行榜管理- 单向表的缺点分析:-单向链表,查找的方向只能是一个方向,而双向链表可以向前或者向后查找。-单向链表不能自我删除,需要靠辅助节点,而双向链表可以自我删除,所有在单链表删除节点时,总是找到 temp,即待删除链表节点的前一个节点来进行删除。原创 2023-02-24 21:12:43 · 215 阅读 · 0 评论 -
【尚硅谷】数据结构和算法——单链表
链表是有序的列表,但是它在内存中是存储如下小结:1)链表是以节点的方式来存储的,是链式存储2)每个节点包含data域, next域:指向下一个节点3)如图:发现链表的各个节点不一定是连续存储4)链表分带头节点的链表和没有头节点的链表,根据实际的需求来确定单链表(带头节点)逻辑结构示意图如下。原创 2023-02-22 18:58:16 · 291 阅读 · 0 评论 -
【尚硅谷】数据结构和算法——队列
跟着B站的尚硅谷学习数据结构与算法,语言为java,目前是第二个代码内容——队列尚硅谷——队列提示:以下是本篇文章正文内容,下面案例可供参考例子:银行办理业务时,顾客取号排队与窗口喊号服务的关系1)队列是一个有序列表,可以用数组或是链表来实现。2)遵循先入先出的原则。即:先存入队列的数据,要先取出。后存入的要后取出。原创 2023-02-19 11:45:44 · 137 阅读 · 0 评论 -
【尚硅谷】数据结构和算法——稀疏数组
跟着B站的尚硅谷学习数据结构与算法,语言为java,目前是第一个代码内容——稀疏数组尚硅谷——稀疏数组提示:以下是本篇文章正文内容,下面案例可供参考当一个数组中大部分元素为0,或者为同一个值的数组时,可以使用稀疏数组来保存该数组。稀疏数组的处理方法:1)记录数组一共有多少行,有多少个不同的值2)把具有不同值的元素的行列及值记录在一个小规模的数组中,从而缩小程序的规模。原创 2023-01-25 21:08:22 · 463 阅读 · 1 评论