• 2024-06-16代码随想录算法训练营第五十九天 | 115.不同的子序列、583. 两个字符串的删除操作、72. 编辑距离、编辑距离总结
    115.不同的子序列题目链接:代码随想录视频讲解:动态规划之子序列,为了编辑距离做铺垫|LeetCode:115.不同的子序列_哔哩哔哩_bilibili解题思路1.dp[i][j]  为在s的前i个元素(即s[0,i-1])(以i-1结尾)中,有多少个t[0,j-1]匹配(以t[j -1]为结尾)2.递推公式//如果
  • 2024-06-08LeetCode 第72题:编辑距离
    在我们日常生活中,有时候会因为一两个字母的错误,让一段话的意思变得完全不同。就像你给女朋友发信息“我爱你”,结果手一抖发成了“我恨你”,这可不得了。因此,如何衡量两个字符串之间的差异,并将一个字符串变成另一个字符串,这就是编辑距离(EditDistance)问题要解决的核心。文
  • 2024-05-30代码随想录算法训练营Day55 | 583. 两个字符串的删除操作、72. 编辑距离、编辑距离总结篇 | Python | 个人记录向
    本文目录583.两个字符串的删除操作做题看文章72.编辑距离做题看文章编辑距离总结篇以往忽略的知识点小结个人体会583.两个字符串的删除操作代码随想录:583.两个字符串的删除操作Leetcode:583.两个字符串的删除操作做题找出最长公共子序列,然后用两个字符串的
  • 2024-05-23算法设计与分析---动态规划(期末)
    1.基本要素 最优子结构-->一个问题的解包含子问题的最优解重叠子问题-->子问题被反复计算2.动态规划和分治区别两者都是把大问题转换成小问题/子问题来解决,并且当最优子问题组合成最优大问题。区别1:解决问题的类型动态规划主要用于解决优化问题,即寻找满足一定条件的最优解
  • 2024-05-1372_Edit_distance_编辑距离
    题目描述Giventwostringsword1andword2,returntheminimumnumberofoperationsrequiredtoconvertword1toword2.Youhavethefollowingthreeoperationspermittedonaword:InsertacharacterDeleteacharacterReplaceacharacter给定两个字符串wo
  • 2024-05-10vim的使用方法
    vim的使用技巧vim会根据文件拓展名自动识别编程语言,支持各种操作如果打开vim,首先需要创建文件或打开已经存在的文件刚进入vim的模式是只读模式,需要按i进入编辑模式,才可以编辑(1)'yy'复制当前光标所在行(2)'cc'是剪切当前光标所在行(3)[n]dd删除当前光标所在行开始的第n行(4)[n]cc
  • 2024-04-30【DP】编辑距离
    https://leetcode.cn/problems/edit-distance/description/?envType=study-plan-v2&envId=top-interview-150非常难的一种考虑方式【转载】dp[i][j]代表将word1的前i个字符转换为word2的前j个字符所需的最少步数。因此,根据题目给出的状态转移方程:当word1[i]==wor
  • 2024-04-26LeetCode三则
    72.编辑距离给你两个单词word1和word2,请返回将word1转换成word2所使用的最少操作数。你可以对一个单词进行如下三种操作:插入一个字符删除一个字符替换一个字符示例1:输入:word1="horse",word2="ros"输出:3解释:horse->rorse(将'h'替换为'r')rorse->rose(删
  • 2024-04-2372. 编辑距离(leetcode)
    https://leetcode.cn/problems/edit-distance/description/?envType=study-plan-v2&envId=top-100-liked这是一个难题,关于序列DP的,官方的题解较为难懂,这里有一位前辈解释的很好这里的状态定义是:dp[i][j]表示word1的前i个字母,转换成word2的前j个字母的最小步数classS
  • 2024-04-07编辑距离
    题目链接https://leetcode.cn/problems/edit-distance/description/题目大意题目代码【记忆化搜索】classSolution{public:intminDistance(stringword1,stringword2){intn=word1.size(),m=word2.size();vector<vector<int>>memo(n,vecto
  • 2024-03-28(55/60)两个字符串的删除操作、编辑距离
    两个字符串的删除操作leetcode:583.两个字符串的删除操作动态规划思路先求最长子序长度然后计算两个原字符串离最长子序长度差多少。代码实现classSolution{public:/*(之前搞错了)最长子序长度word[0:i-1]和word2[0:j-1]的最长子序长dp[i][j]if(word1[i-1]==wo
  • 2024-03-26编辑距离算法
    1.题目给你两个单词 word1 和 word2, 请返回将 word1 转换成 word2 所使用的最少操作数  。你可以对一个单词进行如下三种操作:删除一个字符替换一个字符插入一个字符示例:输入:word1="horse",word2="ros"输出:3解释:horse->rorse(将'h'替换为'r')ror
  • 2024-03-25代码随想录算法训练营第五十五天 | 583. 两个字符串的删除操作, 72. 编辑距离
    72.编辑距离 已解答中等 相关标签相关企业 给你两个单词 word1 和 word2, 请返回将 word1 转换成 word2 所使用的最少操作数 。你可以对一个单词进行如下三种操作:插入一个字符删除一个字符替换一个字符 示例1:输入:word1="horse"
  • 2024-03-24代码随想录算法训练营Day55 ||leetCode 583. 两个字符串的删除操作 || 72. 编辑距离
    583. 两个字符串的删除操作 这道题的状态方程比上一题简单一些初始化如下classSolution{public:intminDistance(stringword1,stringword2){vector<vector<int>>dp(word1.size()+1,vector<int>(word2.size()+1));for(inti=0;i
  • 2024-03-23代码随想录算法训练营第五十五天| ● 583. 两个字符串的删除操作 ● 72. 编辑距离 ● 编辑距离总结篇
    两个字符串的删除操作 题目链接:583.两个字符串的删除操作-力扣(LeetCode)思路:第一次尝试用画图法,然后肉眼观察dp递归规律……但是dp[i][j]的含义还是参考昨天的思路,表示到此处需要删除多少个字符。classSolution{public:intminDistance(stringword1,stringword2
  • 2024-03-21lc1771 由子序列构造的最长回文串的长度
    给出两个字符串word1和word2,需要从word1和word2分别选出某个非空子序列s1和s2,要求连接s1与s2后得到回文串,求该回文串的最大长度。word1和word2长度在[1,1000]内。区间dp,将word1与word2拼接起来,转换成求单个字符串的的最长回文子序列问题,为了保证s1和s2非空,枚举word1和word2中每
  • 2024-03-151768. 交替合并字符串c
    char*mergeAlternately(char*word1,char*word2){intn1=strlen(word1),n2=strlen(word2);char*temp=(char*)malloc(sizeof(char)*(n1+n2+1));intindex1=0,index2=0,index=0,tag=0;while(index1<n1&&index2<n2){if(tag=
  • 2024-03-06LeetCode75 1768.交替合并字符串
    1768.交替合并字符串https://leetcode.cn/problems/merge-strings-alternately/description/?envType=study-plan-v2&envId=leetcode-75publicStringmergeAlternately(Stringword1,Stringword2){intlen1=word1.length();intlen2=word2.length()
  • 2024-03-03【LeetCode】1768_交替合并字符串_C
    题目描述给你两个字符串word1和word2。请你从word1开始,通过交替添加字母来合并字符串。如果一个字符串比另一个字符串长,就将多出来的字母追加到合并后字符串的末尾。返回合并后的字符串。示例示例1:输入:word1="abc",word2="pqr"输出:"apbqcr"解释:字符串合并情
  • 2024-01-22动态规划(9) 编辑距离最终版
    目录115不同的子序列583.两个字符串的删除操作编辑距离115不同的子序列dp数组的含义:dp[i][j]以i-1结尾的s中包含有多少个以j-1为结尾的tdp初始化:dp[0][0]空字符串中有多少个空字符串,显然1个dp[i][0]以i-1为结尾的s中包含有多少个空字符串,也是1个递推公式:显然需要考虑s[i
  • 2023-12-291768
    我的答案:classSolution{public:stringresult;inti=0,j=0;stringmergeAlternately(stringword1,stringword2){if(word1.length()<1||word2.length()>100){return0;}if(word1.size()<word2.size()){while(i
  • 2023-12-06leetcode-1662-easy
    CheckIfTwoStringArraysareEquivalent思路一:把第一个数组入队列,然后遍历比较第二个数组publicbooleanarrayStringsAreEqual(String[]word1,String[]word2){Deque<Character>queue=newArrayDeque<>();for(Stringword:word1){
  • 2023-12-05代码随想训练营第五十六天(Python)| 583. 两个字符串的删除操作、72. 编辑距离
    583.两个字符串的删除操作classSolution:defminDistance(self,word1:str,word2:str)->int:n,m=len(word1),len(word2)#dp数组代表使得word1以i-1结尾和word2以j-1结尾相同的最小步数dp=[[0]*(m+1)for_inrange(n+
  • 2023-11-1211.12打卡
    1.简化路径(70)返回的 规范路径 必须遵循下述格式:始终以斜杠 '/' 开头。两个目录名之间必须只有一个斜杠 '/' 。最后一个目录名(如果存在)不能 以 '/' 结尾。此外,路径仅包含从根目录到目标文件或目录的路径上的目录(即,不含 '.' 或 '..')。返回简化后得到的 规范路
  • 2023-11-07Linux学习笔记之grep满足或排除多个关键字
    grep-E"word1|word2|word3"file.txt#满足任意条件(word1、word2和word3之一)将匹配。grepword1file.txt|grepword2|grepword3#必须同时满足三个条件(word1、word2和word3)才匹配。 #grep同时排除多个关键字#不说废话,例如需要排除abc.txt中的mmmnnngr