首页 > 其他 > 详细

力扣刷题计划-字符串-最长公共前缀

时间:2021-07-29 10:48:38      阅读:21      评论:0      收藏:0      [点我收藏+]

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 };

 

力扣刷题计划-字符串-最长公共前缀

原文:https://www.cnblogs.com/hosseini/p/15065116.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!