- 編寫一個函數來查找字符串數組中的最長公共前綴。
如果不存在公共前綴,返回空字符串 “”。
示例 1:
輸入:strs = [“flower”,“flow”,“flight”]
輸出:“fl”
示例 2:
輸入:strs = [“dog”,“racecar”,“car”]
輸出:“”
解釋:輸入不存在公共前綴。
class Solution
{
public:string longestCommonPrefix(vector<string> &strs){// 特殊情況if (strs.size() == 0){string k;return k;}if (strs.size() == 1){return strs[0];}// 思路:先計算得到最短的單詞數量,然后按照最短的單詞個數逐個進行比較int min_dist = INT_MAX;for (int i = 0; i < strs.size(); ++i){if (strs[i].size() < min_dist){min_dist = strs[i].size();}}string max_f;for (int i = 0; i < min_dist; ++i){char k = strs[0][i];bool success = true;for (int j = 1; j < strs.size(); ++j){if (strs[j][i] == k){continue;}else{success = false;break;}}if (success){max_f.push_back(k);}else{break;}}return max_f;}
};