面试题把字符串 abcdefg 反转,输出 gfedcba
用 PHP 一个函数 strrev 就可以实现这个功能,或者先计算长度, for 循环倒着输出。
这可以考察基本的编程基础,但是在现实中,反转字符串有用到的场景吗?
1
weizn 2016-02-26 10:21:54 +08:00 1
大整数计算,一般大整数放在字符串中,计算前先反转,计算后再反转。
|
2
rogeecn 2016-02-26 10:31:34 +08:00
这不渣浪的面试嘛,哈哈
|
3
codingadog 2016-02-26 10:33:48 +08:00 via iPad 1
记得有一次密码加密用过。。。反复反转 md5 加密 100 次
|
4
mcfog 2016-02-26 10:37:03 +08:00 1
我还真在实际业务中用到过,“金额每三位加逗号分隔”, str_split 是从左到右的,但加逗号是从右到左数的
``` strrev(implode(',', str_split(strrev($num), 3)) ``` |
5
feiyuanqiu 2016-02-26 10:40:12 +08:00 via iPhone
@mcfog 估计你忘了有 money_format 这个函数
|
6
raptium 2016-02-26 10:40:56 +08:00 1
然而还是有号称精通某某语言的人写不出来啊
|
7
mcfog 2016-02-26 10:41:33 +08:00
@feiyuanqiu 并不是,我们系统处理的金额 float 的精度不足以表达,只能用字符串
|
8
jjplay 2016-02-26 10:50:52 +08:00 2
上次看到有人用 javascript 这样写,放在 chrome 扩展里提交用户信息
strrev("drowssaPtsop/moc.lru//:ptth") |
11
dofy 2016-02-26 11:45:10 +08:00
|
12
v1024 2016-02-26 12:38:54 +08:00 via iPhone
|
13
imn1 2016-02-26 12:52:44 +08:00
我个人——
反转字符串多用于加密、搜索 我更多使用的是反转数列 /列表,特别是做两边逼近的情况,一个循环就够了,不用写两个循环从两边逼近 |
14
est 2016-02-26 13:04:17 +08:00
想了一下, py 是 ''.join(reversed('abdced'))
|
15
halida 2016-02-26 15:42:05 +08:00
没有什么用,面试的时候看程序员是否具有基本的编程能力
|
16
incompatible 2016-02-26 16:39:46 +08:00 via iPhone
@mcfog 你用这是什么语言啊,连 decimal 数据类型都没有?
|
17
tanywei 2016-02-26 17:31:04 +08:00
@incompatible abcd'[::-1]
|
18
ipconfiger 2016-02-26 17:34:28 +08:00 1
叫你倒序个字符串就鸡鸡歪歪的夹杂不清, 将来再复杂点的逻辑怎么办, 太简单了看不起?那么就 1 分钟写个没 bug 的出来看看嘛. 最烦这种眼高手低的程序员
|
19
tanteng OP @ipconfiger 这位大牛误解了,并没有说这个东西简单看不起,我是在想这个东西在现实场景中哪些地方用到,切勿激动!
|
20
robinlovemaggie 2016-02-27 00:37:49 +08:00
回文诗
|