您的位置:首页 > 其它

反转字符.递归算法

2011-02-15 14:54 239 查看
今天上午面试的时候遇到一道笔试算法题,题目如下

编写一个方法用于验证指定的字符串是否为反转字符,返回true和false。请用递归算法实现。(反转字符串样式为"abcdedcba")

我写的代码如下,不知道我这种写法是否合格。

string a = string.Empty, b = string.Empty;

protected bool Method(string str,int index)
{
int length = str.Length - 1;

if (index > length) return false;

string strNew = str.Substring(index,1);

if (!a.Contains(strNew))
a += strNew;
else {
string c = b;
b = strNew + c;
}

index++;

if (index <= length)
Method(str,index);

return a.Substring(0, a.Length - 1) == b;
}

调用方式:
Method("abcdedcba",0);


不知道各位高手还有没有更好的写法!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: