码迷,mamicode.com
首页 > 编程语言 > 详细

C#算法之判断一个字符串是否是对称字符串

时间:2015-07-01 11:48:31      阅读:142      评论:0      收藏:0      [点我收藏+]

标签:

static bool IsSymmetry1(string str)
{
    if (string.IsNullOrEmpty(str) || str.Length == 1)
    {
        return false;
    }
    for (int i = 0; i < str.Length / 2; i++)
    {
        if (str[i] != str[str.Length - 1 - i])
        {
            return false;
        }
    }
    return true;
}

 

static bool IsSymmetry2(string str)
{
    if (string.IsNullOrEmpty(str) || str.Length == 1)
    {
        return false;
    }
    var halfLength = str.Length/2;
    var str1 = str.Substring(0, halfLength);
    var str2 = new String(str.Substring(str.Length%2 == 0 ? halfLength : halfLength + 1, halfLength).Reverse().ToArray());
    return str1.Equals(str2);            
}

技术分享

效果也能实现,没用遍历,看起来比上个方案要高大上,实际运行效率更低。

 

C#算法之判断一个字符串是否是对称字符串

标签:

原文地址:http://www.cnblogs.com/ye123456789jun123456789/p/4612640.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!