题解 | #最长公共前缀#
最长公共前缀
https://www.nowcoder.com/practice/28eb3175488f4434a4a6207f6f484f47
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param strs string字符串一维数组 * @return string字符串 */ public String longestCommonPrefix (String[] strs) { // write code here if(strs == null || strs.length == 0) { return ""; } System.out.println("1xxxxxxxxx"); String commonPrefix = strs[strs.length-1]; for(int i = strs.length-2; i>=0; i--) { commonPrefix = commonPrefix(commonPrefix, strs[i]); } return commonPrefix; } public String commonPrefix(String a, String b) { System.out.println("2xxxxxxxxx"); char[] aArr = a.toCharArray(); char[] bArr = b.toCharArray(); int length = Math.min(a.length(), b.length()); StringBuilder sb = new StringBuilder(""); for(int i=0; i< length; i++) { if(aArr[i] == bArr[i]) { sb.append(aArr[i]); } else { break; } } System.out.println("3xxxxxxxxx"); return sb.toString(); } }