最小公共子串——力扣
解题思路
此处撰写解题思路
/*class Solution {
public String longestCommonPrefix(String[] strs) {
String s="";
int index =0;
int ml = strs[0].length();
for(int i=1;i<strs.length;i++){
if(strs[i].length()<ml){
ml = strs[i].length();
}
}
if(strs.length == 0){
return "";
}
if(strs.length == 1){
return strs[0];
}
for(int i=0; i< strs.length;i++){
for(int j=0; j<ml;j++){
if(strs[0].charAt(j) == strs[i+1].charAt(j)&&index<ml ){
index++;
}
s = strs[0].substring(0,index+1);
return s;
}
}
return s;
}
}
*/
此为错解
此题原本采用在数组内用第一个字符串与其他的相比较,欲采用双重循环,但是在与多个比较时容易出现许多错误,index直接加一当没有一样的时候会d多加一个出错,各种错误不好更改,即应该分情况解题,最好将核心方法与整体分开便于改错。则官解中两个相比写一个方法较为稳妥
代码
class Solution {
public String longestCommonPrefix(String[] strs) {
if (strs == null || strs.length == 0) {
return "";
}
//将第一个设为最大公共子串
String prefix = strs[0];
int count = strs.length;
for (int i = 1; i < count; i++) {
prefix = longestCommonPrefix(prefix, strs[i]);
if (prefix.length() == 0) {
break;
}
}
return prefix;
} public String longestCommonPrefix(String str1, String str2) {
int length = Math.min(str1.length(), str2.length());
int index = 0;
while (index < length && str1.charAt(index) == str2.charAt(index)) {
index++;
}
return str1.substring(0, index);
}
}
最小公共子串——力扣相关推荐
- 猿创征文|最长回文子串-力扣
猿创征文|最长回文子串 [猿创征文]最长回文子串-力扣 ✌字符串快速入门
- [力扣刷题总结](双指针篇)
文章目录 |||||||||||||||||||| 双指针 |||||||||||||||||| 905. 按奇偶排序数组 解法1:双指针+原地交换 解法2:两次遍历+保持相对位置 475. 供暖器 ...
- 力扣OJ 剑指 Offer II
目录 剑指 Offer II 001. 整数除法 剑指 Offer II 002. 二进制加法 剑指 Offer II 003. 前 n 个数字二进制中 1 的个数 剑指 Offer II 004. ...
- 力扣刷题记录-动态规划问题总结
百度百科里对于动态规划问题是这样解释的: 在现实生活中,有一类活动的过程,由于它的特殊性,可将过程分成若干个互相联系的阶段,在它的每一阶段都需要作出决策,从而使整个过程达到最好的活动效果.因此各个阶段 ...
- 力扣(LeetCode)刷题,简单+中等题(第32期)
目录 第1题:数组的度 第2题:托普利茨矩阵 第3题:爱生气的书店老板 第4题:翻转图像 第5题:有效的数独 第6题:无重复字符的最长子串 第7题:区域和检索 - 数组不可变 第8题:二维区域和检索 ...
- 力扣(LeetCode)刷题,简单+中等题(第29期)
目录 第1题:分割数组为连续子序列 第2题:翻转矩阵后的得分 第3题:寻找旋转排序数组中的最小值 第4题:乘积最大子数组 第5题:不同路径 第6题:判断路径是否相交 第7题:摆动序列 第8题:单调递增 ...
- 基于visual Studio2013解决面试题之1002公共子串
题目 解决代码及点评 /*求两个字符串的最小公共子串这道题简单的两个字符串遍历即可 */#include <iostream> using namespace std; const ...
- 力扣第314场周赛补题
1.题目:6200. 处理用时最长的那个任务的员工 - 力扣(LeetCode) 思路:两个数组记录处理时间与结果,通过遍历最长时间 class Solution { public:int harde ...
- 力扣235|701|450
235. 二叉搜索树的最近公共祖先 - 力扣(LeetCode) 思路 不用改树结构,直接找到空结点位置插入 类似之前的二叉树的公共祖先,由二叉树最下面进行遍历,由下往上,特别关注的是二叉搜索树是一个 ...
最新文章
- Java 7并发编程实战手册
- Python_管理项目
- 【CKEditor】下载历史版本4.8.x
- Excel中 提取字符串中的字符或数字
- 读取XML文件的节点内的内容
- 硬盘序列号示例_序列化代理模式示例
- java 交换两个数的值(临时变量,加减,异或)
- python列表用来有序存放一组_python入门第二课------列表
- 2021年中国健康险行业创新研究报告
- python (高级消息队列)普通、进程、进程池的消息队列
- 虚拟化小白对VMcpu分配的理解
- Linux 设备树的使用技巧
- node repl环境
- 计算机端口详细介绍(整理版)
- 优缺点 快速扫描 硬盘监测_对手中SSD的性能做到心中有数,十款SSD测试软件介绍...
- Android 获取经纬度处理
- 科技论文计算机排版格式,科技论文排版参考格式
- 脱壳_00_压缩壳_ASPACK
- 【3分钟速读】那些你苦苦搜索的模板,是这么被捣腾出来的
- excel 错位插入_excel表格错位怎么解决?excel数据错位
热门文章
- 国家计算机一级考试题库百度云,全国计算机一级考试题库
- 单点定位2米精度?这张卡差点干掉了RTK(内有轨迹对比图)
- MySQL——超详细数据库触发器教程
- python学习资源整理
- 2.Python环境搭建
- 相似度算法余弦相似度
- Air724UG 4G LTE 模块AT指令连接服务器
- 5.1.2 网络编程进阶---开启子进程的两种方式,进程之间内存空间是相互隔离的...
- 直播倒计时android,直播代码,Android实现验证码倒计时
- BUU_re_[ACTF新生赛2020]rome