zoukankan      html  css  js  c++  java
  • 力扣刷题计划-字符串-最长公共前缀

    1.原题地址

    14. 最长公共前缀 - 力扣(LeetCode) (leetcode-cn.com)

    2.题目描述:编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""

    示例 1:

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

    示例 2:

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

    3.分析

    最简单的方法是遍历每个字符串的相同位置的字符,挨个比对。

    4.代码

     1 class Solution {
     2 public:
     3 
     4     string longestCommonPrefix(vector<string>& strs) {
     5         if(strs.size()==0)
     6             return "";
     7         if(strs[0].size()==0)
     8             return "";
     9 
    10         string result = "";
    11         for(unsigned k = 0;k<strs[0].size();++k)
    12         {
    13             char tmp = strs[0][k];//参照字符,初始化成第一个字符
    14             for(unsigned i = 0;i<strs.size();++i)//遍历所有的字符串
    15             {
    16                 if(strs[i].size()<k+1)//第i个字符串的长度小于 k+1
    17                     return result;
    18 
    19                 if(strs[i][k]!=tmp)//第i个字符串的第j个字符和tmp不相同
    20                 {
    21                     return result;
    22                 }            
    23             }
    24             result = result + tmp;
    25         }
    26         return result;
    27     }
    28 };
  • 相关阅读:
    spark实验四(2)
    spark实验四
    神奇的一天
    Spark实验三
    Scala实验任务三
    Scala实验任务二
    Scala语言实验任务一
    kettle的基本使用
    质量属性之安全性战术
    datax相关
  • 原文地址:https://www.cnblogs.com/hosseini/p/15065116.html
Copyright © 2011-2022 走看看