编写⼀个PHP函数,接受⼀个字符串参数,返回该字符串中最⻓的连续⼦串,该⼦串只包含相同的字符
封面图
•
2026-01-16
•
PHP
204
0
0
0
下面是一个 PHP 函数,它接受一个字符串参数,并返回该字符串中**最长的连续相同字符子串**: ```php <?php function longestSameCharSubstring($str) { if (empty($str)) { return ""; } $maxChar = $str[0]; $currentChar = $str[0]; $maxLength = 1; $currentLength = 1; for ($i = 1; $i < strlen($str); $i++) { if ($str[$i] === $currentChar) { $currentLength++; } else { $currentChar = $str[$i]; $currentLength = 1; } if ($currentLength > $maxLength) { $maxLength = $currentLength; $maxChar = $currentChar; } } return str_repeat($maxChar, $maxLength); } // 示例用法: echo longestSameCharSubstring("aabbaaa"); // 输出 "aaa" echo "\n"; echo longestSameCharSubstring("abccdde"); // 输出 "cc" echo "\n"; echo longestSameCharSubstring("aaaaa"); // 输出 "aaaaa" echo "\n"; echo longestSameCharSubstring("abcde"); // 输出 "a"(或任意单个字符) ?> ``` ### 说明: - 函数遍历字符串,记录当前连续相同字符的长度。 - 如果当前字符与前一个相同,则增加计数器;否则重置计数器。 - 每次更新最大长度时,也记录对应的字符。 - 最后返回由该字符重复最大长度组成的字符串。 如果你只需要返回最长子串的长度而不是实际字符串,也可以修改函数。欢迎继续提问!
上一篇:
编写⼀个PHP函数,实现斐波那契数列的前n项,其中n为函数参数
下一篇:
写出、你能想到的所有HTTP返回状态值,并说明用途(比如:返回404表示找不到页面)
标题录入,一次不能超过6条
留言
评论