14. Longest Common Prefix

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:
0 <= strs.length <= 200
0 <= strs[i].length <= 200
strs[i] consists of only lower-case English letters.

Solution:

  1. find shortest string
  2. compare shortest with remaining string of array
  3. horizontal scan until inequality
  4. return [:i]

Key:
Horizontal scanning
LCP(S1,…, Sn) = LCP(LCP(LCP(S1,S2),S3), …, Sn)

n iterations -> find previous two LCP to compare next to find next LCP

references

# array, easy

Commentaires

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×