数据结构和算法
数据结构和算法
全部文章
分类
读书笔记(1)
题解(70)
归档
标签
去牛客网
登录
/
注册
数据结构和算法的博客
关注微信公众号“数据结构和算法”,每日一题
TA的专栏
76篇文章
67人订阅
数据结构和算法
73篇文章
54597人学习
常见数据结构介绍
3篇文章
606人学习
全部文章
(共8篇)
【数据结构和算法】动态规划解最长公共子串
来自专栏
动态规划解决 注意这题求的是最长公共子串,不是最长公共子序列,子序列可以是不连续的,但子串一定是连续的。 定义dp[i][j]表示字符串str1中第i个字符和str2种第j个字符为最后一个元素所构成的最长公共子串。如果要求dp[i][j],也就是str1的第i个字符和str2的第j个字符为最后一个元...
java
字符串
动态规划
2021-07-05
107
8592
【数据结构和算法】替换空格的两种解决方式
来自专栏
先把字符串转换为单个字符 这里让求的是把字符串中的空格替换成%20,其中一种实现方式就是申请一个临时数组,然后再遍历这个字符串的每个字符,如果不是空格就把遍历的字符添加到临时数组中,如果是空格就添加3个字符'%','2','0'分别到临时数组中,最后再把临时数组转化为字符串即可。 publi...
java
字符串
2021-07-03
55
5928
【数据结构和算法】最长公共前缀
来自专栏
1,解法一 先取第一个字符串当做他们的公共前缀 然后找出他和第2个字符串的公共前缀,然后再用这个找出的公共前缀分别和第3个,第4个……判断 public String longestCommonPrefix(String[] strs) { //边界条件判断 ...
java
字符串
2021-04-03
19
1620
【数据结构和算法】把字符串转换成整数,分3步计算
来自专栏
按照题中的要求做就行了,总共分为3步 先去掉字符串两边的空格 然后判断符号 最后读取数字 public int atoi (String str) { str = str.trim();//去掉前后的空格 //如果为空,直接返回0 if (...
整数
java
字符串
2021-04-02
7
1004
【数据结构和算法】StringBuilder,双指针等3种实现方式
来自专栏
1,使用StringBuilder 使用StringBuilder,一行代码搞定 public String solve(String str) { return new StringBuilder(str).reverse().toString(); } 2,...
java
字符串
双指针
2021-04-02
18
1139
【数据结构和算法】带图文分析的4种解法
来自专栏
1,解法一 我们使用两个指针,一个i一个j,最开始的时候i和j指向第一个元素,然后i往后移,把扫描过的元素都放到map中,如果i扫描过的元素没有重复的就一直往后移,顺便记录一下最大值max,如果i扫描过的元素有重复的,就改变j的位置,我们就以pwwkew(这是之前画的图,求的是字符串,不是数字,这里...
java
字符串
2021-04-02
223
7643
【数据结构和算法】中心扩散,暴力,动态规划3种方式解决
来自专栏
1,中心扩散法 中心扩散法也很好理解,我们遍历字符串的每一个字符,然后以当前字符为中心往两边扩散,查找最长的回文子串,下面随便举个例子,看一下 图片中我们是以每一个字符为中心,往两边扩散,来求最长的回文子串。但忽略了一个问题,回文串的长度不一定都是奇数,也可能是偶数,比如字符串&...
java
字符串
动态规划
2021-04-02
144
5742
【数据结构和算法】大数相加,3种方式解决
来自专栏
1,从尾部插入 实际上这道题求的是两个字符串相加,我们就用两个很短的字符串"12367"+"89"为例画个图来看下是怎么计算的 它相当于两个字符串从最右边开始相加,比如我们要计算s字符串的最右边的那个数字和t字符串最右边的那个字符相加 int i = s.length() - 1, j = t.l...
大数
大数相加
字符串
2020-12-21
82
6336