【LeetCode】Longest Common Prefix 解题报告

来源:互联网 发布:淘宝如何召唤人工客服 编辑:程序博客网 时间:2024/06/05 02:11

【LeetCode】Longest Common Prefix 解题报告

标签(空格分隔): LeetCode


题目地址:https://leetcode.com/problems/longest-common-prefix/description/

题目描述:

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

Ways

题目意思是找出最长前缀字符串。

方法一:遍历数组的第一个字符串的所有可能前缀字符串,看其他字符串的前缀是否全部一样。

用到的一个技巧是使用了all函数,判断所有的是否都满足条件。而是注意字符串切片,因为xrange是从0开始数的,而字符串切片的第二个数字是结束位置(不包含),这样必须让切片的位置加一才行。就是代码第13行。

class Solution(object):    def longestCommonPrefix(self, strs):        """        :type strs: List[str]        :rtype: str        """        if strs == None or len(strs) == 0:            return ""        def is_common(prefix, strs):            return all(str.startswith(prefix) for str in strs)        answer = ''        for i in xrange(len(strs[0])):            pre = strs[0][:i + 1]            print pre            if is_common(pre, strs):                answer = pre            else:                break        return answer

Date

2017 年 8 月 25 日

原创粉丝点击