题目:LeetCode 014 Longest Common Prefix
题意:给出一组字符串求公共前缀
思路:很多个字符串的公共前缀应该不会很高,所以直接暴力解决就好
但是又有个特判,即当只有一个字符串的时候,直接返回即可。另外,一定要注意每次利用下标访问字符串的时候,一定要判断是否在有效范围内。
代码如下:
1 class Solution { 2 public: 3 string longestCommonPrefix(vector<string>& strs) { 4 int n = strs.size(); 5 if(n == 0) return ""; 6 string str = strs[0]; 7 for(int i = 1; i < n; i++) 8 { 9 int len1 = str.size(), len2 = strs[i].size(); 10 if(len1 == 0 || len2 == 0) return ""; 11 int len = 0; 12 string tmp = ""; 13 while(len < len1 && len < len2 && str[len] == strs[i][len]) 14 tmp += str[len++]; 15 str = tmp; 16 } 17 return str; 18 } 19 };