php反转字符串的三种方法

原创 2016年06月01日 00:32:08

这种问题在面试题中经常被问到,php有自带的函数strrev可以轻松实现,但是面试官要考的肯定不是这个啦。除此办法外,我能想到的还有两个,第一个就是把分割字符串到一个数组中,然后遍历拼接,具体如下:

function revstr($str)
{
	if (strlen($str) <= 1) return $str;

	$newstr  = '';
	$str2arr = str_split($str,1);
	foreach ($str2arr as $word) {
		$newstr = $word.$newstr;
	}

	return $newstr;
}


这种方法是最容易想到的,除此以外还有一个方法,就是利用递归来做,代码如下:

function revstr($str)
{
	if (strlen($str) <= 1) return $str;

	$newstr = '';
	$newstr .= substr($str,-1).revstr(substr($str,0,strlen($str)-1));

	return $newstr;
}
ps:这种方法应该才是面试官想看到的答案。


版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

PHP中实现中文字符串反转避免乱码的方法

今天博主在网上看PHP面试题的时候,看到了这么一个问题,如何实现字符串反转,当时想不是有一个内置函数strrev能实现这个功能吗?后来试了一下,这个函数只能对英文字符进行反转,对中文会有乱码出现。主要...

单链表实现反转的三种方法

单链表的操作是面试中经常会遇到的问题,今天总结一下反转的几种方案: 1 ,两两对换 2, 放入数组,倒置数组 3, 递归实现

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

单链表的反转/逆序的三种方法

原文章地址:单链表反转、逆序/*单链表的反转/逆序的三种方法*//* *前面我们大约把单链表 ADT 的基本操作都过了一遍,但是这 *还不够。单链表在面试与笔试中出现的几率很高,接下来我们 *再花点时...

hdu 1062Text Reverse 反转字符串【两种方法 数组法、堆栈】

Problem Description Ignatius likes to write words in reverse way. Given a single line of text which...

红薯 7 种将字符串反转的 Java 方法

转载地址:http://www.oschina.net/code/snippet_12_9060 import java.util.Stack; public class Stri...

一种巧妙的反转字符串的方法及思考过程

如题,需求是反转字符串,当然啦方法是有很多的,这种我觉得蛮有意思的^_^#include #include using namespace std;int main() { string s...
  • NoMasp
  • NoMasp
  • 2015-12-22 14:37
  • 1683

java字符串反转方法【全】

搜集的java字符串反转方法,一般用于面试,项目中用的很少··· package com.wsheng.aggregator.algorithm.string; import java.ut...

模拟实现一个字符串的反转的9种方法

1. 使用Array.Reverse方法 对于字符串反转,我们可以使用.NET类库自带的Array.Reverse方法 public static string ReverseByArray(st...

字符串反转的9种方法

1. 使用Array.Reverse方法 对于字符串反转,我们可以使用.NET类库自带的Array.Reverse方法 public static string ReverseByArra...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)