day52专题

【代码随想录训练营第42期 续Day52打卡 - 图论Part3 - 卡码网 103. 水流问题 104. 建造最大岛屿

目录 一、做题心得 二、题目与题解 题目一:卡码网 103. 水流问题 题目链接 题解:DFS 题目二:卡码网 104. 建造最大岛屿 题目链接 题解:DFS  三、小结 一、做题心得 也是成功补上昨天的打卡了。 这里继续图论章节,还是选择使用 DFS 来解决这类搜索问题(单纯因为我更熟悉 DFS 一点),今天补卡的是水流问题和岛屿问题。个人感觉这一章节题对于刚

学习大数据DAY52 Docker中的Mysql主从配置

Mysql 数据库主从同步 上机练习 1 容器生成命令 压缩包获取镜像 docker image load -i /root/mysql.tar 创建并开启两个镜像: docker run --name mysql1 -d -p 3333:3306 \ -v /opt/mysql1/conf:/etc/mysql/conf.d/

DAY52-图论BFS

kama101.孤岛的总面积 /*** 在外循环遇到没有标记过的岛屿+1* @param args*/public static void main(String[] args) {Scanner scan = new Scanner(System.in);int n=scan.nextInt();int m=scan.nextInt();int[][] isoland = new i

Code Practice Journal | Day52_Graph03

KamaCoder 101. 孤岛的总面积 题目:101. 孤岛的总面积 (kamacoder.com) 题解:代码随想录 (programmercarl.com) solution namespace ACMModeExample{class Program{static void Main(string[] args){// 读取矩阵的行数和列数string[] dimensio

day52-graph theory-part03-8.23

tasks for today: 1. 101.孤岛总面积 2. 102.沉默孤岛 3. 103.水流问题 4. 104.建造最大岛屿 -------------------------------------------------------------------------------------- 1. 101.孤岛总面积 pay attention to the requ

代码随想录day52 101孤岛的总面积 102沉没孤岛 103水流问题 104建造最大岛屿

代码随想录day52 101孤岛的总面积 102沉没孤岛 103水流问题 104建造最大岛屿 101孤岛的总面积 代码随想录 #include <iostream>#include <vector>using namespace std;int count = 0;int dir[4][2] = {{1, 0}, {0, 1}, {-1 ,0}, {0, -1}};void dfs(v

优化:Day52 动态规划part10

LC300最长递增子序列 dp数组中dp[i]的含义是:以nums[i]结尾的子序列中最长递增子序列的长度为dp[i]最长连续递增子序列 非连续最长递增子序列 如果是连续的,只需要nums[i]>nums[i-1]就将dp值+1,但是如果是非连续的,nums[i]之前的所有子序列都可能跟nums[i]组成递增子序列,因此需要多加一层循环 LC674最长连续递增子序列 LC718最长重复子

Day52 代码随想录打卡|二叉树篇---二叉搜索树中的众数

题目(leecode T501): 给你一个含重复值的二叉搜索树(BST)的根节点 root ,找出并返回 BST 中的所有 众数(即,出现频率最高的元素)。 如果树中有不止一个众数,可以按 任意顺序 返回。 假定 BST 满足如下定义: 结点左子树中所含节点的值 小于等于 当前节点的值结点右子树中所含节点的值 大于等于 当前节点的值左子树和右子树都是二叉搜索树 方法:本题要求二叉搜

算法训练营day52

题目1:123. 买卖股票的最佳时机 III - 力扣(LeetCode) class Solution {public:int maxProfit(vector<int>& prices) {vector<vector<int>> dp(prices.size(), vector<int>(4,0));dp[0][0] = -prices[0];dp[0][1] = 0;dp[0][2] =

代码随想录算法训练营第36期DAY52

DAY52 123买卖股票的最佳时机iii 主要是想不到:每天有5个状态(无操作,第一次持有股票、第一次不持有股票、第二次持有股票、第二次不持有股票) class Solution {public:    int maxProfit(vector<int>& prices) {        vector<int> dp(5,0);        dp[1]=-prices[0];

Day51 动态规划part10+Day52 动态规划part11

LC121买卖股票的最佳时机(未掌握) 暴力:双层循环寻找最优间距,每一次都确定一个起点,遍历剩余节点当作终点 贪心:取最左最小值,不断遍历那么得到的差值最最大值就是最大利润。 动态规划 dp数组的含义: dp[i][0] 表示第i天持有股票所得最多现金dp[i][1] 表示第i天不持有股票所得最多现金 递归式的推导 dp[i][0]=>第i-1天持有和第i天买入的最多现金=>Math.max(

随想录Day52 | 123.买卖股票的最佳时机III 188.买卖股票的最佳时机IV

随想录Day52 | 123.买卖股票的最佳时机III 188.买卖股票的最佳时机IV 今天的题比较经典,见到的次数也比较多了,跳过二维dp,直接压缩空间写比较精简的题解。 123.买卖股票的最佳时机III 题目链接 123 给定一个数组,它的第 i 个元素是一支给定的股票在第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你最多可以完成 两笔 交易。 注意:你不能同时参与多

前端面试题日常练-day52 【面试题】

题目 希望这些选择题能够帮助您进行前端面试的准备,答案在文末 1. 在PHP中,以下哪个函数用于将字符串转换为小写? a) strlower() b) strtolower() c) tolowercase() d) lower() 2. 哪个PHP函数用于获取字符串的长度? a) count() b) strlen() c) length() d) size() 3. 在PHP中,以

【每日刷题】Day52

【每日刷题】Day52 🥕个人主页:开敲🍉 🔥所属专栏:每日刷题🍍 🌼文章目录🌼 1. 2965. 找出缺失和重复的数字 - 力扣(LeetCode) 2. 350. 两个数组的交集 II - 力扣(LeetCode) 3. 2807. 在链表中插入最大公约数 - 力扣(LeetCode) 1. 2965. 找出缺失和重复的数字 - 力扣(LeetCode

【算法刷题day52】Leetcode:300. 最长递增子序列、674. 最长连续递增序列、718. 最长重复子数组

文章目录 Leetcode 300. 最长递增子序列解题思路代码总结 Leetcode 674. 最长连续递增序列解题思路代码总结 Leetcode 718. 最长重复子数组解题思路代码总结 草稿图网站 java的Deque Leetcode 300. 最长递增子序列 题目:300. 最长递增子序列 解析:代码随想录解析 解题思路 dp数组的含义是以该元素为结尾的

day52 动态规划part9

198. 打家劫舍 中等 你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。 给定一个代表每个房屋存放金额的非负整数数组,计算你 不触动警报装置的情况下 ,一夜之内能够偷窃到的最高金额。 思路 class Solution {public int

草稿代码随想录算法训练营第day52|300.最长递增子序列 、 674. 最长连续递增序列 、 718. 最长重复子数组

目录 300.最长递增子序列 674. 最长连续递增序列 718. 最长重复子数组   300.最长递增子序列 力扣题目链接 (opens new window) 给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。 子序列是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7] 是数组 [0,3,1,6,2,2

代码随想录算法训练营Day52 ||leetCode 300.最长递增子序列 || 674. 最长连续递增序列 || 718. 最长重复子数组

300.最长递增子序列  class Solution {public:int lengthOfLIS(vector<int>& nums) {if (nums.size() <= 1) return nums.size();vector<int> dp(nums.size(), 1);int result = 0;for (int i = 1; i < nums.size(

C++从零开始(day52)——unordered_set,unordered_map学习使用

1.unordered系列关联式容器 C++98中,STL提供了底层为红黑树结构的一系列容器,在查找时效率可以达到时间复杂度可以达到O(logN),即红黑树的高度次,当树中的结点非常多时,查询效率也不理想,因此在C++11中,STL又提供了4个unordered系列的关联式容器,者四个容器与红黑树结构的关联式容器使用方法类似,只是其底层结构不同,这里只介绍unordered_set,unorde

代码随想录算法训练营Day52 | 300.最长递增子序列、674.最长连续递增序列、718.最长重复子数组

300.最长递增子序列 这题的重点是DP数组的定义,子序列必须以nums[i]为最后一个元素,这样dp数组中后面的元素才能与前面的元素进行对比 1、DP数组定义:dp[i]表示以nums[i]为最后一个元素的最长递增子序列长度 2、DP数组初始化:全部初始化为1(子序列最少也有自身一个) 3、递推公式:与 i 前所有元素进行对比,如果nums[i] > nums[j],那么更新dp[i]

【LeetCode】718. 最长重复子数组(中等)——代码随想录算法训练营Day52

题目链接:718. 最长重复子数组 题目描述 给两个整数数组 nums1 和 nums2 ,返回 两个数组中 公共的 、长度最长的子数组的长度 。 示例 1: 输入:nums1 = [1,2,3,2,1], nums2 = [3,2,1,4,7]输出:3解释:长度最长的公共子数组是 [3,2,1] 。 示例 2: 输入:nums1 = [0,0,0,0,0], nums2 = [

【LeetCode】674. 最长连续递增序列(简单)——代码随想录算法训练营Day52

题目链接: 题目描述 给定一个未经排序的整数数组,找到最长且 连续递增的子序列,并返回该序列的长度。 连续递增的子序列 可以由两个下标 l 和 r(l < r)确定,如果对于每个 l <= i < r,都有 nums[i] < nums[i + 1] ,那么子序列 [nums[l], nums[l + 1], ..., nums[r - 1], nums[r]] 就是连续递增子序列。 示例

代码随想录算法训练营Day52|300.最长递增子序列、674. 最长连续递增序列、718. 最长重复子数组

300.最长递增子序列 题目链接:300.最长递增子序列 文档链接:300.最长递增子序列 视频链接:动态规划之子序列问题,元素不连续!| LeetCode:300.最长递增子序列 C++实现 class Solution {public:int lengthOfLIS(vector<int>& nums) {if(nums.size() <= 1) return nums.size

day52 ● 121. 买卖股票的最佳时机 ● 122.买卖股票的最佳时机II

121. 买卖股票的最佳时机   122.买卖股票的最佳时机II

DAY52:动态规划(打家劫舍系列)

Leetcode: 198 打家劫舍 基本思路 1、dp下标 dp[i]表示下标i(包括i)以内的房屋,最多可以偷窃的金额为dp[i]。 2、递推公式 如果偷第i房间,那么dp[i] = dp[i - 2] + nums[i]。 如果不偷第i房间,那么dp[i] = dp[i - 1]。 所以dp[i]取最大值,即dp[i] = max(dp[i - 2] + nums[i], dp

代码随想录Day52 | 打家劫舍

代码随想录Day52 | 打家劫舍 198.打家劫舍213.打家劫舍II337.打家劫舍III 198.打家劫舍 文档讲解:代码随想录 视频讲解: 动态规划,偷不偷这个房间呢?| LeetCode:198.打家劫舍 状态 选与不选 dp数组 dp[j] 表示第j个位置的最大金额递推公式 dp[j] 是由dp[j-1]和dp[j-2]决定的,如果偷了j-1的房间就不能偷j