Skip to content

Latest commit

 

History

History
63 lines (44 loc) · 1.21 KB

20220628.md

File metadata and controls

63 lines (44 loc) · 1.21 KB

Algorithm

14. Longest Common Prefix

Description

Write a function to find the longest common prefix string amongst an array of strings.

If there is no common prefix, return an empty string "".

Example 1:

Input: strs = ["flower","flow","flight"]
Output: "fl"

Example 2:

Input: strs = ["dog","racecar","car"]
Output: ""
Explanation: There is no common prefix among the input strings.

Constraints:

  • 1 <= strs.length <= 200
  • 0 <= strs[i].length <= 200
  • strs[i] consists of only lower-case English letters.

Solution

class Solution {
    public String longestCommonPrefix(String[] strs) {
        if(strs==null||strs.length==0){
            return "";
        }
        // 先把最长公共前缀设置为第一个单词
        String pre = strs[0];
        for(String str:strs){
            // 如果当前单词的最长公共前缀不是pre,循环执行如下步骤
            while(str.indexOf(pre)!=0){
                // pre将去掉最后一个字母,缩短前缀长度
                pre = pre.substring(0,pre.length()-1);
            }
        }
        return pre;
    }
}

Discuss

Review

Tip

Share