zoukankan      html  css  js  c++  java
  • letcode 第四题

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

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

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

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

    解法1:(利用collections.Counter来构造字典判断超过两个字符或以上出现的次数)

    class Solution:
        def canPermutePalindrome(self, s: str) -> bool:
            d = collections.Counter(s)
            odd = 0
            for i in d:
                if d[i] % 2 == 1:
                    odd += 1
            if odd >= 2 or (odd==1 and len(s) %2 ==0):
                return False
            return True

    来源:力扣(LeetCode)
    链接:https://leetcode-cn.com/problems/palindrome-permutation-lcci
    著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

  • 相关阅读:
    校验规则,纯数字。几位有效数字,保留几位小数
    银行卡校验规则(Luhn算法)
    forEach兼容ie8
    node.js
    gulp
    observer
    webpack.config.js 配置
    内存泄漏(Memory Leak)
    cdn
    前端 各种插件的官网
  • 原文地址:https://www.cnblogs.com/jackson669/p/12849813.html
Copyright © 2011-2022 走看看