목차
주제
문자열 배열에서 가장 긴 공통 접두사를 찾는 함수를 작성하십시오.
공통 접두사가 없으면 빈 문자열 ""을 반환합니다.
예
예 1:
입력: strs = ["꽃","흐름","비행"]
출력: "fl"
예 2:
입력: strs = ["dog","racecar","car"]
출력: ""
설명: 입력에 대한 공통 접두사가 없습니다.
생각의 기차
수직 스캔 시 모든 문자열의 각 열을 앞에서 뒤로 순회하면서 같은 열에 있는 문자가 같은지 비교하고 같으면 다음 열을 계속 비교하고 같지 않으면 현재 열은 더 이상 공통 접두사에 속하지 않습니다. part는 가장 긴 공통 접두사입니다.
수직비교법에서는 첫 번째 것을 기준으로 삼고 그 다음 요소들을 차례로 비교한다. 후속 요소의 길이가 충분하지 않으면 이전 결과 문자열이 즉시 반환됩니다.
코드
func longestCommonPrefix(strs []string) string {
if len(strs) <=0 {
return ""
}
for i:=0;i<len(strs[0]);i++{
for j:=1;j<len(strs);j++{
if i == len(strs[j]) || strs[j][i] != strs[0][i]{
return strs[0][:i]
}
}
}
return strs[0]
}
부록
필기를하다