Python算法练习 9.18

leetcode 1657 确定两个字符串是否相似

如果可以使用以下操作从一个字符串得到另一个字符串,则认为两个字符串 接近

  • 操作 1:交换任意两个 现有 字符。
    • 例如,ab cde -> ae cdb
  • 操作 2:将一个 现有 字符的每次出现转换为另一个 现有 字符,并对另一个字符执行相同的操作。
    • 例如,aa cabb->bb cbaa(所有 a 转化为 b ,而所有的 b 转换为 a

你可以根据需要对任意一个字符串多次使用这两种操作。

给你两个字符串,word1word2 。如果word1word2接近 ,就返回 true ;否则,返回false

复制代码
输入:word1 = "abc", word2 = "bca"
输出:true
解释:2 次操作从 word1 获得 word2 。
执行操作 1:"abc" -> "acb"
执行操作 1:"acb" -> "bca"

问题转换:也就是说,这两个字符串的字母种类是相同的,并且字母出现所有频率是相同的(每一个字母对应的频率可以不同,但是频率序列一定相同)

python 复制代码
class Solution(object):
    def closeStrings(self, word1, word2):
        """
        :type word1: str
        :type word2: str
        :rtype: bool
        """
        return Counter(word1).keys() == Counter(word2).keys() and sorted(Counter(word1).values()) == sorted(Counter(word2).values())

自己的编译器试了没问题,但是不知道为什么还会出错

相关推荐
寻星探路2 小时前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
你撅嘴真丑4 小时前
第九章-数字三角形
算法
uesowys4 小时前
Apache Spark算法开发指导-One-vs-Rest classifier
人工智能·算法·spark
ValhallaCoder4 小时前
hot100-二叉树I
数据结构·python·算法·二叉树
董董灿是个攻城狮4 小时前
AI 视觉连载1:像素
算法
智驱力人工智能5 小时前
小区高空抛物AI实时预警方案 筑牢社区头顶安全的实践 高空抛物检测 高空抛物监控安装教程 高空抛物误报率优化方案 高空抛物监控案例分享
人工智能·深度学习·opencv·算法·安全·yolo·边缘计算
猫头虎5 小时前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven
孞㐑¥6 小时前
算法——BFS
开发语言·c++·经验分享·笔记·算法
八零后琐话6 小时前
干货:程序员必备性能分析工具——Arthas火焰图
开发语言·python
月挽清风6 小时前
代码随想录第十五天
数据结构·算法·leetcode