![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Coding
Eeeeling
这个作者很懒,什么都没留下…
展开
-
LCS最长公共子序列
经典动态规划状态转移方程:有两个序列X,Y,设C[i,j]是Xi和Yj的最长公共子序列长度那么考虑Xi和Yj的关系C[i,j]=若i=0或j=0,则C[i,j]=0;若Xi=Yj,则C[i,j]=C[i-1,j-1]+1;若Xi!=Yj,则C[i,j]=max{C[i-1,j],C[i,j-1]}一共三种情况,就可以把动态规划的表格填完动规基本步骤1、...原创 2019-04-03 21:13:04 · 118 阅读 · 0 评论 -
LeetCode 005-最长回文子串-动态规划
题目给定一个字符串s,找到s中最长的回文子串。你可以假设s的最大长度为 1000。输入: "babad"输出: "bab"注意: "aba" 也是一个有效答案。输入: "cbbd"输出: "bb"思路我本打算求正串和反串的最长连续公共子串,但是发现不会写。看了题解,原来这个思路也不对,直接求正反串的公共部分可能会出错。选了题解中比较好理解的动态规划方法进行代...原创 2019-04-05 15:49:39 · 125 阅读 · 0 评论 -
LeetCode 003-无重复字符的最长子串-尺取法(双指针)
题目给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。输入: "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。思路半个月之前做过。想了好久想到类似双指针的方法。今天正式学了双指针,来重写一遍。看看代码会不会好看点~<Before the codes>C++ set基础用法set,中文...原创 2019-04-05 14:29:39 · 319 阅读 · 0 评论 -
LeetCode 209-长度最小的子数组-尺取法(双指针)
题目给定一个含有n个正整数的数组和一个正整数s ,找出该数组中满足其和≥ s的长度最小的连续子数组。如果不存在符合条件的连续子数组,返回 0。输入:s = 7, a= [2,3,1,2,4,3]输出:2解释: 子数组[4,3]是该条件下的长度最小的连续子数组。思路算法思路如下(1)以s=t=sum=0初始化(2)只要依然有sum<S,就不...原创 2019-04-05 13:36:32 · 170 阅读 · 0 评论 -
最大最小差值
题目有n个数,两两组成二元组,相差最小的有多少对呢?相差最大呢?输入645 12 45 32 5 6输入包含多组测试数据。对于每组测试数据:N - 本组测试数据有n个数a1,a2...an - 需要计算的数据保证: 1<=N<=100000,0<=ai<=INT_MAX.输出1 2(第一个数表示差最小的对数,第二个数表示差最大的对数)...原创 2019-04-04 19:31:07 · 1108 阅读 · 0 评论 -
排序算法(插入
如题。1、插入排序#include <iostream>#include<cstring>#include<string>using namespace std;const int maxn=1010;int s[maxn];//插入int main(){ int n; cin>>n; int j; ...原创 2019-04-04 16:29:02 · 122 阅读 · 0 评论 -
字符移位-排序思路
题目把一个字符串的大写字母放到字符串的后面,各个字符的相对位置不变,且不能申请额外的空间。输入输入数据有多组,每组包含一个字符串s,且保证:1<=s.length<=1000.输出对于每组数据,输出移位后的字符串。例子输入:AkleBiCeilD输出:kleieilABCD思路稳定,空间复杂度低(时间复杂度高)的排序方法候选:冒泡/插入...原创 2019-04-04 15:43:59 · 88 阅读 · 0 评论 -
构造回文/ 最长回文子串
题目给定一个字符串s,你可以从中删除一些字符,使得剩下的串是一个回文串。如何删除才能使得回文串最长呢?输出需要删除的字符个数。1<=s.length()<=1000。输入abcdagoogle输出22思路(我本没有思路……)回文串的特点是正着读和反着读一样,假设原来字串是s,求它的反串,然后再找到它们的最长公共子序列,它的长度就是s能产生的最长...原创 2019-04-04 00:13:14 · 514 阅读 · 0 评论