检查字符串是否是回文的字谜

Mar*_*Ene -2 c# palindrome anagram

我的问题是:你如何检查给定的字符串是否是回文的字谜?

我在互联网上找到了Python的一些解决方案,但我不知道如何检查它.我正在考虑将strig转换为a char [],然后为每个角色获得HashCode,但是我被卡住了.

pet*_*ids 5

如果你对回文或字谜不感兴趣,那么我认为你可以重新设定问题,检查一个给定的字符串是否只有一个字符出现不均匀次数.这是基于只有中间字符可能出现奇数次.只要满足即可,您可以从字符串形成回文.

要做到这一点,你可以使用Linq.也许这样的东西:

private static bool IsPalindromeAnagram(string test)
{
    var charCount = test.GroupBy(c => c, (c, i) => new
        {
            character = c,
            count = i.Count()
        });

    return charCount.Count(c => c.count % 2 == 1) <= 1;
}
Run Code Online (Sandbox Code Playgroud)