LeetCode PHP 最長公共前綴
- 2020 年 2 月 25 日
- 筆記
友情提示:此篇文章大約需要閱讀 2分鐘35秒,不足之處請多指教,感謝你的閱讀。訂閱本站
題目詳情
編寫一個函數來查找字元串數組中的最長公共前綴。
如果不存在公共前綴,返回空字元串 ""
。
示例 1: 輸入: ["flower","flow","flight"] 輸出: "fl" 示例 2: 輸入: ["dog","racecar","car"] 輸出: "" 解釋: 輸入不存在公共前綴。
說明:所有輸入只包含小寫字母 a-z
。
題目解析
- 先默認數組中的第一個字元串為公共前綴
- 然後再遍歷其他的字元串

最上公共前綴示意圖
<?php class Solution { /** * @param String[] $strs * @return String */ function longestCommonPrefix($strs) { if (empty($strs)) { return ""; } $ans = $strs[0]; $count = count($strs); for ($i = 1; $i < $count; $i++) { $j = 0; for (; $j < strlen($ans) && $j < strlen($strs[$i]); $j++) { if (substr($ans, $j, 1) != substr($strs[$i], $j, 1)) { break; } } $ans = substr($ans, 0, $j); if ($ans == "") { return ""; } } return $ans; } } $arr = ["flower", "flow", "flight"]; print_r((new Solution())->longestCommonPrefix($arr));
