用于回文变位的JavaScript解决方案

JavaScript solution for anagram of a palindrome

本文关键字:JavaScript 解决方案 回文 用于      更新时间:2024-02-10

在最近的一次采访中,我被要求实现与此相同的问题:

https://stackoverflow.com/questions/8447222/anagram-of-a-palindrome

我无法提供答案,但有兴趣了解JavaScript解决方案。

这应该是有效的。。但我只用很少的输入进行了测试:)至少它背后的理论应该是可以的。

String.prototype.count=function(char) { 
    return this.split(char).length-1;
}
function isAnagramOfPalyndrom(string){
    string.replace(" ", "");  
    var even = string.length % 2 == 0;
    var flag = false;

    for(var i = 0; i < string.length; i++){
    if(string.count(string.charAt(i)) % 2 != 0){
       if(even) return false;
       else{
        if(flag) return false;
        flag = true;
       }
    }

}
return true;

}

理论上,如果除了1之外,每个字母都有一个偶数,那么它就是回文的变位符。

参见:"皮划艇"k:2,a:2,y:1参见:"SAAS"s:2,a:2