列表

详情


面试题 01.04. 回文排列

给定一个字符串,编写一个函数判定其是否为某个回文串的排列之一。

回文串是指正反两个方向都一样的单词或短语。排列是指字母的重新排列。

回文串不一定是字典当中的单词。

 

示例1:

输入:"tactcoa"
输出:true(排列有"tacocat"、"atcocta",等等)

 

原站题解

去查看

上次编辑到这里,代码来自缓存 点击恢复默认模板
class Solution { public: bool canPermutePalindrome(string s) { } };

golang 解法, 执行用时: 0 ms, 内存消耗: 1.9 MB, 提交时间: 2021-06-22 11:46:39

func canPermutePalindrome(s string) bool {
    mp := map[byte]int{}
    for i := range s {
        _, has := mp[s[i]]
        if has {
            delete(mp, s[i])
        } else {
            mp[s[i]] = 0
        }
    }

    return len(mp) <= 1
}

上一题