測試開發工程師的每日演算法-Leecode 演算法題目第 14. 最長公共字首
題目難易程度: Easy
編寫一個函式來查詢字串陣列中的最長公共字首。
如果不存在公共字首,返回空字串 ""。
示例 1:
輸入: ["flower","flow","flight"]
輸出: "fl"
示例 2:
輸入: ["dog","racecar","car"]
輸出: ""
解釋: 輸入不存在公共字首。
思路:透過題意理解得到:輸入的字串列表中,每個字串都必須有一個共同的字首字串,若字串的同位置上的字元與其他字串上字元不等時,就返回公共字首,否則繼續。
解題程式碼如下,執行效率與儲存空間需要進行最佳化,以下是按照最常規思路編寫。
class Solution(object):
def longestCommonPrefix(self, strs):
"""
:type strs: List[str]
:rtype: str
"""
if strs:
strs_min_str = sorted(strs, key=lambda x:len(x))[0]
sum_str = ''
for i in range(len(strs_min_str)):
for y in strs:
if strs_min_str[i] == y[i]:
pass
else:
return sum_str
sum_str += strs_min_str[i]
return sum_str
return ''
相關文章
- LeeCode 14. 最長公共字首
- 14.最長公共字首
- 14. 最長公共字首
- 演算法:最長公共字首演算法
- 力扣 14. 最長公共字首力扣
- 每日leetcode——最長公共字首LeetCode
- 演算法之字串——最長公共字首演算法字串
- LeetCode每日一題:最長公共字首(No.14)LeetCode每日一題
- 每日一練(35):最長公共字首
- 最長公共字首
- 經典演算法題每日演練——最長公共子序列演算法
- 讓我們一起啃演算法----最長公共字首演算法
- 【完虐演算法】「字串-最長公共字首」5種方法腦洞大開演算法字串
- 測試開發每日演算法 Leecode21. 合併兩個有序連結串列演算法
- LeetCode最長公共字首(Python)LeetCodePython
- 力扣最長公共字首力扣
- 14_最長公共字首
- LeetCode-14. 最長公共字首LeetCode
- leetcode14.最長公共字首LeetCode
- #LeetCode14. 最長公共字首 @FDDLCLeetCode
- 2020-10-31 最長公共字首【簡單題14】
- 記一次 TX_Company 的測試開發一面面試題目 (演算法題:第 77 題-爬樓梯)面試題演算法
- LeetCode——python3最長公共字首——2020.11.24LeetCodePython
- 軟體測試工程師必會的面試題目工程師面試題
- [譯] Swift 演算法學院 - 最長公共子序列演算法Swift演算法
- LeetCode - 014 - 最長公共字首(longest-common-prefix)LeetCode
- leetcode爬坑史(一)-- [14] 最長公共字首LeetCode
- 領釦LintCode演算法問題答案-77. 最長公共子序列演算法
- 【演算法工程師】Python面試問題總結演算法工程師Python面試
- 【資源】NLP 演算法工程師相關的面試題演算法工程師面試題
- oppo、有贊測試開發工程師節選面試題工程師面試題
- 趣頭條 Golang開發工程師(偏工程演算法)Golang工程師演算法
- 以最長公共子序列問題理解動態規劃演算法(DP)動態規劃演算法
- ABC353E字典樹處理最長公共字首
- 面試題:編寫一個函式來查詢字串陣列中的最長公共字首。 如果不存在公共字首,返回空字串 ""。(c++實現)面試題函式字串陣列C++
- 進軍測試開發工程師之路~工程師
- 微軟演算法面試題:如何找最長的增長子序列微軟演算法面試題
- cv演算法工程師成長路線演算法工程師