leetcode 14.最长公共前缀

算法思路:

本题我的心得是不用观察中间状态,即不需要每一步都判断当前是否是公共前缀。只需要在第一次出现不是公共前缀时他的上一个状态就一定是最长公共前缀。同时我们也无需取最短字符串,只需要在遍历时多加一个长度判断即可,即如果当前遍历到的第j列中j等于某个字符串的长度,那么就可判断此时已经到这个字符串最后一位也直接返回即可。于是代码如下:

cpp 复制代码
class Solution {
public:
//第一次不同前的就是最长公共前缀
    string longestCommonPrefix(vector<string>& strs) {
        string& s0 = strs[0];
        for(int j = 0;j<s0.size();j++){
            //j相当于从左往右遍历
            for(string& s:strs){
                //相当于遍历判断每个字符串
                if(j == s.size() || s[j] != s0[j]){
                 return s0.substr(0,j);
                }
            }
        }
        return s0;
    }
};
相关推荐
.道阻且长.25 分钟前
Linux基本开发工具:编译器gcc/g++
linux·运维·服务器·职场和发展
Yuzhiyuxia11 小时前
【AI Agent面试系列】AI Agent记忆机制知识点1
人工智能·面试·职场和发展
UIU11411 小时前
P1233 [ICPC 2001 Taejon R] 木棍加工
数据结构·c++·算法·动态规划
论文复现现场11 小时前
WRF、FEA 能用 L40S 加速吗?求解器检查、断点恢复与长期运行
java·数据库·算法·wrf·有限元分析·gpu计算·断点续算
ZhengEnCi12 小时前
用 AI 写代码为什么拼到最后还是拼人:算力瓶颈与领域专家提示词的本质差异
算法·架构
秋天的怀念_David13 小时前
第二十一夜 · 数字黑洞与西西弗斯的惩罚
java·程序人生·算法
碧海银沙音频科技研究院13 小时前
在PC电脑上用Whisper→Marian算法实现离线语音翻译功能
算法·whisper
niyongsheng14 小时前
3D 装箱算法工程化:数据结构、放置启发式与支撑规则
数据结构·算法·rust
j7~16 小时前
【穷举、深搜与回溯算法】一棵决策树讲透全排列与子集
数据结构·c++·算法·leetcode·回溯·递归
傅科摆 _ py17 小时前
DP,贪心,堆和栈,二分力扣复习
开发语言·python·算法