【发布时间】:2012-11-02 02:46:38
【问题描述】:
让我们仅将其归类为 PHP。
好的,所以我昨天接受了高级软件开发人员职位的面试。我不太记得这个问题,但我尽量写出我记得的内容。
问题;
编写一个以字符串为输入的函数,如果遍历则返回true,否则返回false。
要求; (据我所知)
- 只有一种输入(字符串)类型。
- 字符串参数必须通过引用传递。
- 函数中没有变量,他的意思是如果参数被称为 $str 应该对其进行操作,不喜欢我使用第二个变量来设置 reverseStr 等
- 不循环字符串中的每个字符,他明确表示不要循环字符串中的每个字符。
- 没有内置的 PHP 函数可以使用,我认为他对 (strlen) 很好
我的回答;(不,他不喜欢)
$str = 'this is testing';
$length = strlen($str);
$reverseStr = '';
for($i=$length-1; $i>=0; $i--) {
$reverseStr .= $str[$i];
}
因此,虽然这在一定程度上起到了作用,但他不喜欢我遍历每个字符来获得 reverseStr。我猜我需要考虑一个递归解决方案来获取字符串和索引等的最后一个字符。但我在写这篇文章时正在考虑这些,为时已晚!
你们在想什么?
【问题讨论】:
-
虽然我理解它违反了规则,但请注意 PHP 有
strrev()。 -
你应该反转字符串,还是只是检查它是否是回文?函数名称暗示前者,但其内容暗示后者。
-
@MrCode 这个任务显然是为了测试受访者的算法方法。它不打算作为现实生活中的场景,而且似乎它显然完成了它的工作,因为 OP 显示了一种极端字面的方法,这并不适合高级开发人员职位。
-
没有内置功能????这包括循环吗?
-
@Baba 循环不是函数。