首页 > 代码库 > 14. Longest Common Prefix【leetcode】
14. Longest Common Prefix【leetcode】
14. Longest Common Prefix
Write a function to find the longest common prefix string amongst an array of strings.
寻找一个数组中最长的公共前缀
例如["baaa","caaabbb","aaaa"]输出“aaa”
结题思路:
- 判断非空的情况在进行计算
- 取第一个字符串最为标杆进行对比,因为最终结果一定在第一位中
- 用第一个串进行逐个对比出最长的串
public class Solution { public String longestCommonPrefix(String[] strs) { if(strs==null || strs.length==0) return ""; String pr= strs[0]; for(int i =1;i<strs.length;i++){ //用j计算最长串的长度 int j=0; while(j<pr.length()&&j<strs[i].length()&&pr.charAt(j)==strs[i].charAt(j)){ j++; } if(j==0){ return ""; } pr =pr.substring(0,j); } return pr; } }
注意:看到网上有帖子说进行排序,然后对比第一个和最后一个的公共序列,这样是不对的,因为如果中间的串没有公共序列时,返回结果错误
14. Longest Common Prefix【leetcode】
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。