最长公共前缀

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

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

示例 1:

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

示例 2:

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

提示:

  • 1 <= strs.length <= 200
  • 0 <= strs[i].length <= 200
  • strs[i] 仅由小写英文字母组成
  • class Solution {
    public:
        string longestCommonPrefix(vector<string>& strs) {
             if(strs.size()<1)return "";
               sort(strs.begin(),strs.end());
               
              string s=strs[0];
              if(strs.size()<2)return s;
               int start=0; 
               for(int i=1;i<strs.size();i++)
                {
                    int ma=0;
                     string s1=strs[i];              
                     for(int j=0;j<s.length();j++)
                      {
            
                        if(s[j]==s1[j]) ma++;
                        else break;   
                      }
                      if(ma==0)return "";
                      s= s.substr(start,ma);
                }
    
                
             return s;
        } 
    };

    最大公共子缀

  • class Solution {
    public:
        string longestCommonPrefix(vector<string>& strs) {
             if(strs.size()<1)return "";
               sort(strs.begin(),strs.end());
               
              string s=strs[0];
              if(strs.size()<2)return s;
              int ma=0; int start=0; 
               for(int i=1;i<strs.size();i++)
                {
                    
                     string s1=strs[i];
                     vector<vector<int> > dp(200,vector<int>(200,0));
                    
                     for(int j=1;j<=s.length();j++)
                      {
            
                                    if(s[k-1]==s1[j-1])dp[j][k]=dp[j-1][k-1]+1;
                                    if(ma<dp[j][k])
                                    {
                                        ma=dp[j][k];
                                        start=j-ma;
                                    }
                             }
                              
                      }
                      s= s.substr(start,ma);
                }
    
                
             return s;
        } 
    };

相关推荐

  1. 公共前缀

    2024-03-24 05:12:02       17 阅读
  2. 14.公共前缀

    2024-03-24 05:12:02       5 阅读
  3. LeetCode 14 公共前缀

    2024-03-24 05:12:02       48 阅读
  4. leetCode算法—14. 公共前缀

    2024-03-24 05:12:02       47 阅读
  5. 力扣14. 公共前缀

    2024-03-24 05:12:02       34 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-24 05:12:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-24 05:12:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-24 05:12:02       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-24 05:12:02       20 阅读

热门阅读

  1. 网络安全防御策略

    2024-03-24 05:12:02       19 阅读
  2. MySQL的For Update行级锁

    2024-03-24 05:12:02       22 阅读
  3. 【Redis底层原理】之数据结构与持久化机制

    2024-03-24 05:12:02       24 阅读
  4. 蓝桥杯每日一题:修建灌木

    2024-03-24 05:12:02       21 阅读
  5. k8s etcdctl 备份

    2024-03-24 05:12:02       20 阅读
  6. Vue2的生命周期

    2024-03-24 05:12:02       16 阅读
  7. 华为OD机试 C++ -采样过滤

    2024-03-24 05:12:02       19 阅读
  8. im-system 第八章

    2024-03-24 05:12:02       20 阅读
  9. vue3父组件给子组件传值,并在子组件接受

    2024-03-24 05:12:02       19 阅读