Leetcode PHP题解--D134 14. Longest Common Prefix
题目链接
题目分析
给定一个含有多个单词的数组,返回其中最长公共前缀。
就是说,把所有单词中共同的前几个字母返回。
解题思路
我们需要对比每个单词的同一个位置的字母。如果不一样就结束。如果遇到某一个单词对应位置没有字母时也结束。
虽然说要最长公共前缀,但最长也只能和给定数组中的最短单词一样长。
那么无论从哪个单词开始比都是一样的。
最终代码
<?php
class Solution {
/**
* @param String[] $strs
* @return String
*/
function longestCommonPrefix($strs) {
$first = array_shift($strs);
$first = str_split($first);
$length = count($first);
$prefix = '';
for($i=0;$i<=$length;$i++){
foreach($strs as $str){
if(!isset($str[$i])){
break 2;
}
if($str[$i] != $first[$i]){
break 2;
}
}
$prefix .=$first[$i];
}
return $prefix;
}
}
若觉得本文章对你有用,欢迎用爱发电资助。
No Comments