Code Kata #5

3340 ワード

質問する


strsは単語を含む配列です.
共通の開始語(prefix)を返してください.
例:
strs = ['start', 'stair', 'step']
return'st'
strs = ['start', 'wework', 'today']
return''

に答える

def get_prefix(strs):
    if len(strs) == 0:
        return ""

    min_string = min(strs, key=len)			# strs의 가장 짧은 단어를 선정.
    for index, alphabet in enumerate(min_string):	# 가자 짧은 단어를 딕셔너리 형태로해서 index와 value값을 따로 구함.
        for word in strs:				# strs를 word라는 요소로 돌리면서
            if alphabet != word[index]:			# min_string의 value가 각 요소의 첫 문자와 비교.
                return min_string[:index]		# 만약 다르면 min_string의 같은 부분가지만 뽑아 반환.
    return min_string					# 만약 문자가 2개 뿐이고 모두 같을 경우에는 단어 자체를 반환.