Longest Common Prefix python問題解
Longest Common Prefix python問題解
問題の説明:文字列の配列を入力し、これらの文字列の最大接頭辞文字列を出力します.
考え方:まず2つの境界状況を考慮する文字列配列が空の場合、最終的に空の文字列 が出力される.文字列配列に1つの文字列しかない場合、その文字列を直接出力すれば である.
その後は一般的に、リスト生成式を用いて配列の中で最も短い文字列の長さを求め、その後配列を列ごとに遍歴(配列を行列と見なす)し始め、その列の文字が同じであれば、最後の結果にその文字を加え、そうでなければ直接戻る
コードは次のとおりです.
レンガを投げて玉を引いて、何か分からないところがあったり、もっと良い解法があったりして交流を歓迎します.
問題の説明:文字列の配列を入力し、これらの文字列の最大接頭辞文字列を出力します.
考え方:まず2つの境界状況を考慮する
その後は一般的に、リスト生成式を用いて配列の中で最も短い文字列の長さを求め、その後配列を列ごとに遍歴(配列を行列と見なす)し始め、その列の文字が同じであれば、最後の結果にその文字を加え、そうでなければ直接戻る
コードは次のとおりです.
class Solution:
# @param {string[]} strs
# @return {string}
def longestCommonPrefix(self, strs):
strlen=len(strs)
if strlen==0:
return ''
if strlen==1:
return strs[0]
minLen=min([len(strs[i]) for i in range(strlen)])
resultString=''
for j in range(minLen):
equalNum=0
for i in range(1,strlen):
if strs[0][j]==strs[i][j]:
equalNum+=1;
if equalNum==strlen-1:
resultString+=strs[0][j]
else: return resultString
return resultString
レンガを投げて玉を引いて、何か分からないところがあったり、もっと良い解法があったりして交流を歓迎します.