9.22模板

最长公共前缀
编写一个函数来查找字符串数组中的最长公共前缀。

如果不存在公共前缀,返回空字符串 ""。

 

示例 1:

输入:strs = ["flower","flow","flight"]
输出:"fl"
示例 2:

输入:strs = ["dog","racecar","car"]
输出:""
解释:输入不存在公共前缀。

#include <bits/stdc++.h>
using namespace std;

string longestCommonPrefix(vector<string>& strs) {
    if(strs.size() == 0){
        return "";
    }
    string longest_str = strs[0];
    for(int i=1;i<strs.size();i++){
        int j =0;
        while(j < longest_str.size() && j < strs[i].size()){
            if(longest_str[j] == strs[i][j]){
                j++;
               
                continue;
            }
            else{
                break;
            }
        }
        longest_str = longest_str.substr(0,j);
    }
    return longest_str;
}
#include <bits/stdc++.h>
using namespace std;

int main()
{
    vector<string> strs = {"flower","flow","flight"};
    cout << longestCommonPrefix(strs) << endl;
    return 0;
}
 
需要多次进行比较,调试时候会发现少一个break,最长公共,挨个比较就可以
posted @   卧龙丹心  阅读(4)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示