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.
?
大意就是,寫一個函數可以找到一個數組字符串中的最長前綴。
?
分析: 最長前綴的最大值為數組字符串中長度最短的字符,由最短字符串由后向前遞減可以得到最長前綴。
?
算法構架:先遍歷求得最短字符串和長度n,然后再次遍歷數組,用最短字符串依次對比當前字符串前n個字符是否相等,不相等則n--,直到找到最短字符串和當前字符串前n個字符相等,繼續遍歷。
注意:因為是求共有的前綴,所以前綴必定滿足所有字符串,因此只用單次遍歷數組即可以求得答案。
?
public class Solution {public String longestCommonPrefix(String[] strs) {if (strs == null || strs.length == 0){return "";}int length = strs[0].length();String res = strs[0];for (int i = 1; i < strs.length; i++){if (strs[i].length() < length){length = strs[i].length();res = strs[i];}}for (String s : strs){while (!res.equals(s.substring(0,length))){length--;res = res.substring(0,length);}}return res;} }復雜度為n
轉載于:https://www.cnblogs.com/snakech/p/5758020.html
總結
以上是生活随笔為你收集整理的LeetCode: 14. Longest Common Prefix的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 阿里最新分享Redis全套学习笔记PDF
- 下一篇: easyui后台模板