自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【数据结构】二叉树

二叉树是最常用的树形结构,特别适合编码,常常将一般的树转换为二叉树来处理。二叉树的每个节点最多有两个子节点,分别称为左孩子、右孩子,以它们为根的子树称为左子树、右子树。二叉树的每层节点数以2的倍数递增,所以二叉树的第i层最多有2i−1个节点。如果每层的节点数都是满的,称它为满二叉树。一个n层的满二叉树,一共有2”一1个节点。如果满二叉树只在最后一层有缺失,并且缺失的编号都在最后,则称为完全二叉树。

2025-04-18 20:39:08 1012

原创 Leetcode链表题总结

leetcode提供的链表一般没有头结点,某些题目需要注意添加头结点,这样一来,我们就不需要对链表的第一个结点进行特殊的操作与判断了。

2025-04-18 11:36:28 1129

原创 【算法】搜索dfs

深度优先搜索(Depth-First Search,简称DFS)是一种经典的图遍历和搜索算法,它以"深度"为优先方向进行探索,广泛应用于各类问题的解决中。DFS算法使用栈(stack)作为其核心数据结构,可以是显式的栈结构,也可以通过递归调用隐式地利用系统栈。它的空间复杂度为O(h),其中h是搜索树的高度。

2025-04-17 11:43:02 314

原创 【算法】动态规划树形DP

在树这种数据结构上做DP很常见:给出一棵树,要求以最少代价(或最大收益)完成给定的操作。并且在树上做DP显得非常自然,因为树本身有“子结构”性质(树和子树)。基于树的解题步骤一般是先把树转换为有根树(如果是几棵互不连通的树,就加一个虚拟根,它连接所有孤立的树),然后在树上做DFS,递归到最底层的叶子节点,再一层层返回信息更新至根节点。

2025-04-11 20:41:43 962

原创 【算法】动态规划线性DP

线性DP经典题目总结

2025-04-11 11:27:31 919

原创 【算法】动态规划背包问题

动态规划背包问题总结

2025-04-09 22:18:03 769

原创 【算法】动态规划

动态规划问题的简单介绍

2025-04-09 16:15:13 496

原创 【数据结构】并查集详解

由于每棵树的根结点代表该集合,当合并两个集合时,比如将a集合与b集合合并。为了保证a集合中的每个元素的根结点不重不漏地均变为b集合的根结点,只需将a集合的根结点root_a的父节点pre[root_a]更新为集合b的根结点。我们可以发现由于合并操作和查询操作只会用到集合的根结点,我们不需要维护树中每个元素的父结点,所以我们可以将每棵树的非根结点全部加到根结点的下方,也就是所谓的路径合并操作。如何方便的维护每个元素的根结点同时进行不同子集的合并操作呢?当查询某个元素的根结点时进行路径合并操作即可。

2025-04-08 14:48:14 471 1

空空如也

空空如也

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

TA关注的人

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