#include <iostream>
#include <vector>
#include <stdlib.h>
using namespace std;
class Solution
{
public:
string longestLCPmonPrefix(vector<string>& strs)
{
string LCP;
if (strs.size() == 0)
return LCP;
unsigned int min_len = INT_MAX;
unsigned int min_idx = 0;
for (unsigned int i = 0; i < strs.size(); ++i)
{
auto& s = strs[i];
if (s.size() < min_len)
{
min_len = s.size();
min_idx = i;
}
}
auto& smin = strs[min_idx];
for (unsigned int i = 0; i < min_len; ++i)
{
char c = smin[i];
unsigned int j;
for (j = 0; j < strs.size(); ++j)
{
auto& cs = strs[j];
if (c != cs[i])
break;
}
if (j == strs.size())
LCP += c;
else
break;
}
return LCP;
}
};
int main()
{ // 定义字符数字 动态
Solution S;
vector<string> A;
S.longestLCPmonPrefix(A);
A.push_back("flower");
A.push_back("flow");
A.push_back("flight"); // 输入数据
cout << "最长公共前缀是:" << S.longestLCPmonPrefix(A) << " ";
system("pause");
return 0;
}
无标题-8
最新推荐文章于 2024-07-17 18:07:42 发布