摘要:并查集基础 一、概念及其介绍 并查集是一种树型的数据结构,用于处理一些不相交集合的合并及查询问题。 并查集的思想是用一个数组表示了整片森林(parent),树的根节点唯一标识了一个集合,我们只要找到了某个元素的的树根,就能确定它在哪个集合里。 二、适用说明 并查集用在一些有 N 个元素的集合应用问题
阅读全文
lotus贵有恒何必三更眠五更起 最无益只怕一日曝十日寒 |
|
随笔分类 - 算法
摘要:并查集基础 一、概念及其介绍 并查集是一种树型的数据结构,用于处理一些不相交集合的合并及查询问题。 并查集的思想是用一个数组表示了整片森林(parent),树的根节点唯一标识了一个集合,我们只要找到了某个元素的的树根,就能确定它在哪个集合里。 二、适用说明 并查集用在一些有 N 个元素的集合应用问题
阅读全文
摘要:并查集是一种用于处理不相交集合的合并和查询问题的数据结构。它可以把一些元素划分为若干个不相交的集合,并支持两种操作: 合并(Union):把两个不相交的集合合并为一个集合。 查询(Find):查询两个元素是否在同一个集合中。 并查集的思想是用一个数组表示了整片森林,树的根节点唯一标识了一个集合,我们
阅读全文
摘要:1. 题目 读题 https://leetcode.cn/problems/number-of-islands/submissions/ 考查点 这道题的考察点是: 如何使用并查集这种数据结构来解决一些关于集合的问题,例如判断两个元素是否属于同一个集合,或者统计有多少个不相交的集合。 如何实现并查集
阅读全文
摘要:1. 题目 读题 https://leetcode.cn/problems/evaluate-division/ 考查点 2. 解法 思路 代码逻辑 具体实现 3. 总结
阅读全文
摘要:1. 题目 读题 考查点 2. 解法 思路 思路是这样的: 首先,我把网格看作一个无向图,每个1是一个节点,每个相邻的1之间有一条边。 然后,我用一个变量count来记录岛屿的数量,初始值为0。 接着,我遍历网格中的每个位置,如果当前位置是1,就说明找到了一个新的岛屿,然后我把count加一,并且用
阅读全文
摘要:1. 题目 读题 考查点 2. 解法 思路 代码逻辑 具体实现 3. 总结
阅读全文
摘要:1. 题目 读题 考查点 2. 解法 两种解法 使用hashSet 使用并查集 解法一:使用hashSet 思路 这个解法的核心思想是 找出数组中的所有连续序列的起点, 然后从每个起点开始向后延伸,计算出每个序列的长度,并更新最长长度。 为了找出所有的起点,我们需要判断一个元素是否有前驱,即它的前一
阅读全文
摘要:1. 题目 读题 考查点 2. 解法 思路 动态规划是一种将复杂问题分解为子问题的方法,通过记录子问题的解,避免重复计算,从而提高效率。动态规划的关键是找到状态和状态转移方程。 在这道题中,我们可以定义状态为dp[i],表示第i个位置能接住的雨水量。状态转移方程为: dp[i] = min(maxL
阅读全文
摘要:1. 题目 读题 https://leetcode.cn/problems/maximum-product-subarray/ 考查点 2. 解法 思路 思路是这样的:我们要找到一个子数组,使得它的乘积最大。我们可以用动态规划的方法,定义一个状态dp[i],表示以第i个元素结尾的子数组的最大乘积。那
阅读全文
摘要:1. 题目 读题 考查点 这道题的考查点是: 如何定义合适的状态,即dp[i]的含义。 如何找到状态转移方程,即dp[i]和dp[j]的关系。 如何初始化和更新状态,即dp[i]的初始值和最大值。 如何从状态数组中得到最终结果,即res的值。 2. 解法 思路 讲一下思路吧。 这个问题的核心是找到数
阅读全文
摘要:1. 题目 读题 https://leetcode.cn/problems/best-time-to-buy-and-sell-stock-with-cooldown/submissions/429217002/ 考查点 2. 解法 思路 思路是这样的: 首先,我们需要定义三个状态,分别表示第 i
阅读全文
摘要:1. 题目 读题 https://leetcode.cn/problems/coin-change/description/ 考查点 这道题的考查点是动态规划的思想和方法,以及如何定义状态和状态转移方程。动态规划是一种将复杂问题分解为子问题,并存储子问题的解的方法。它可以用来解决一些具有最优子结构和
阅读全文
摘要:1. 题目 读题 https://leetcode.cn/problems/house-robber-iii/description/ 好的,我可以给你一个图形化的示例。假设我们有这样一个二叉树: 3 / \ 4 5 / \ \ 1 3 1 我们可以用一个表格来表示每个节点的f0和f1的值: 节
阅读全文
|