领扣(LeetCode)最长公共前缀 个人题解
生活随笔
收集整理的這篇文章主要介紹了
领扣(LeetCode)最长公共前缀 个人题解
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
編寫一個函數(shù)來查找字符串數(shù)組中的最長公共前綴。
如果不存在公共前綴,返回空字符串?""。
示例?1:
輸入: ["flower","flow","flight"] 輸出: "fl"示例?2:
輸入: ["dog","racecar","car"] 輸出: "" 解釋: 輸入不存在公共前綴。說明:
所有輸入只包含小寫字母?a-z?。
?
這題比較簡單,采用O(m*n)的算法復雜度,即對每個串內的字符一個字符一個字符判斷,可以比較容易解決問題。不過要注意字符串數(shù)組越界的問題。
代碼如下:
1 class Solution { 2 public String longestCommonPrefix(String[] strs) { 3 String ans = ""; 4 if (strs.length == 0) 5 return ans; 6 int minlen = strs[0].length(); 7 for (String string : strs) { 8 if (string.length() < minlen) 9 minlen = string.length(); 10 } 11 for (int i = 0; i < minlen; i++) { 12 char tmp = strs[0].charAt(i); 13 for (int j = 1; j < strs.length; j++) { 14 15 if (strs[j].charAt(i) == tmp) 16 continue; 17 else 18 return ans; 19 } 20 ans += tmp; 21 } 22 return ans; 23 } 24 }?
轉載于:https://www.cnblogs.com/axiangcoding/p/9931578.html
總結
以上是生活随笔為你收集整理的领扣(LeetCode)最长公共前缀 个人题解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java 之 继承 super关键籽
- 下一篇: 视觉SLAM十四讲学习笔记——第四讲--