19.1.26 [LeetCode14] Longest Common Prefix

Write a function to find the longest common prefix string amongst an array of strings.

If there is no common prefix, return an empty string "".

Example 1:

Input: ["flower","flow","flight"]
Output: "fl"

Example 2:

Input: ["dog","racecar","car"]
Output: ""
Explanation: There is no common prefix among the input strings.
 1 class Solution {
 2 public:
 3     string longestCommonPrefix(vector<string>& strs) {
 4         if (strs.size() == 0)return "";
 5         int ans = 0, l = strs[0].length();
 6         for (int i =0; i < l; i++) {
 7             char c = strs[0][i];
 8             for (int j = 1; j < strs.size(); j++)
 9                 if (strs[j][i] != c)
10                     return strs[0].substr(0,ans);
11             ans++;
12         }
13         return strs[0].substr(0, ans);
14     }
15 };
View Code

唯一需要注意的地方是数组可能为空

注定失败的战争,也要拼尽全力去打赢它; 就算输,也要输得足够漂亮。
原文地址:https://www.cnblogs.com/yalphait/p/10322615.html