Longest Common Prefix(LCP)
LCP ๋ฌธ์ ๋ ์ ์๋ ๋ช ๋ฒ ํ์ด๋ดค๋๋ฐ,
์ฒ์ ๋ณธ ๋ฌธ์ ์ฒ๋ผ ์์ํ๋ฐ.. ์ฌํ๋ค ..์ฐ์ ์ ๋์ฌ์ ์ต๋ ๊ธธ์ด๋ ์ฃผ์ด์ง ๋ฌธ์์ด ์ค ๊ฐ์ฅ ์์ ๋ฌธ์์ด์ ๊ธธ์ด์ด๊ธฐ ๋๋ฌธ์, ๋ฆฌ์คํธ๋ฅผ ๊ธธ์ด๋ฅผ ๊ธฐ์ค์ผ๋ก ์ค๋ฆ์ฐจ์ ์ ๋ ฌํ๋ค.
๊ทธ ํ ๊ฐ์ฅ ์์ ๊ธธ์ด์ ๋ฌธ์์ด๊ณผ ๋๋จธ์ง ๋ฌธ์์ด์ ํ๊ธ์์ฉ ๋น๊ตํด์
๊ฐ์ฅ ๊ธด ์ ๋์ฌ๋ฅผ ์ฐพ์์ ๋ฆฌํดํ๋ค.์กฐ๊ธ ๋ฌด์ํ๊ฒ ๋น๊ตํ ๊ฒ ๊ฐ์์
๋์ค์ ๋ฆฌํฉํ ๋ง ํด๋ด์ผ๊ฒ ๋คLCP์ ๋ํด ์ข ๋ ์๊ณ ์ถ๋ค๋ฉด?
https://velog.io/@choiyunh/์๊ณ ๋ฆฌ์ฆ-Suffix-Array์-LCP
class Solution(object): def longestCommonPrefix(self, strs): """ :type strs: List[str] :rtype: str """ strs.sort(key=len) rst = "" for j in range(len(strs[0])): cur = strs[0][j] for i in range(1, len(strs)): if strs[i][j] != cur: return rst rst += cur return rst