php判断回文串,四脚猫每日一题 – 给定一个字符串,如何判断它是否是一个回文?...

【四脚猫】每日一题(2016年10月24日): 给定一个字符串,判断它是否是一个回文? 只考虑字母字符的情况,并且忽略大小写。

所谓回文字符串,就是一个字符串,从左到右读和从右到左读是完全一样的,比如”level” 、 “aaabbaaa” 。

惊鲵第一个给出了算法描述:先获取字符串长度,然后除2,获取字符串后一半,然后反转过来看是否等于前面,等于就是一个回文。

爪的速度果然快,光速提交了另一种算法的code!

function is_palindrome($str)

{

$str = strtolower($str);

return $str === strrev($str);

}

asun依据题意提炼出数学模型:问题的关键在于  $arr[$n] == $arr[$len-1-$n],并且给出了解法。

function is_hui_wenzi($str){

$str = strtolower($str);

$len = strlen($str);

$n = 0;

for($i=0;$i<$len;$i++){

if($str{$i} == $str{$len-1-$n}){

$n++;

}

}

return $len == $n;

}

blackpuppy是个非常严谨的工程师,不仅仅实现了算法,还加上了测试代码!

function isReverse($string)

{

$tmp = strtolower($string);

return $tmp === strrev($tmp);

}

function test()

{

$strings = ['level', 'aaabbaaa', 'abcd', 'ABCdcba'];

foreach ($strings as $string) {

$result = isReverse($string);

echo '"' . $string . '"' . ($result ? '是' : '不是') . '回文' . PHP_EOL;

}

}

test();

没想到每日一题停了这么久,还是这么多朋友积极参与,非常感谢大家。

技术水平从来不是一朝一夕就能登峰造极的,所有牛逼的人物都是一步步走出来的。

愿我们一起努力,每天提高一点点,共同成长为更牛逼的工程师!

欢迎各位攻城狮,各位大牛给每日一题投稿,大家可以把自己碰到的有趣问题,工作中碰到的难题等…发送到

稿件邮箱:2313427189@qq.com

或者直接在群里 @2313427189 也行。

欢迎各位攻城狮,各位大牛给每日一题投稿,大家可以把自己碰到的有趣问题,工作中碰到的难题等…发送到

稿件邮箱:2313427189@qq.com

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值