博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LeetCode 893 Groups of Special-Equivalent Strings 解题报告
阅读量:4691 次
发布时间:2019-06-09

本文共 855 字,大约阅读时间需要 2 分钟。

题目要求

You are given an array A of strings.

Two strings S and T are special-equivalent if after any number of moves, S == T.

A move consists of choosing two indices i and j with i % 2 == j % 2, and swapping S[i] with S[j].

Now, a group of special-equivalent strings from A is a non-empty subset S of A such that any string not in S is not special-equivalent with any string in S.

Return the number of groups of special-equivalent strings from A.

题目分析及思路

给定一组字符串,若经过若干次move两个字符串相等,则这两个字符串是special-equivalent。定义一次move是将字符串中的奇数或偶数位置的两个字母交换。题目要求返回这一组字符串的special-equivalent字符串的组数。可以分别对每一个字符串的奇数和偶数位置的字母进行排序再合并,最后将合并的结果放入集合中,集合的长度即为所求。

python代码

class Solution:

    def numSpecialEquivGroups(self, A: 'List[str]') -> 'int':

        s = set()

        for a in A:

            s.add(''.join(sorted(a[0::2]))+''.join(sorted(a[1::2])))

        return len(s)

            

        

 

转载于:https://www.cnblogs.com/yao1996/p/10401205.html

你可能感兴趣的文章
java成神之——properties,lambda表达式,序列化
查看>>
BZOJ4127Abs——树链剖分+线段树
查看>>
PyQt4测试安装ok的程序
查看>>
(ios开发学习笔记四)利用toolbar实现多窗体跳转
查看>>
444
查看>>
Django(一):web服务端实例
查看>>
CSS3background新增属性
查看>>
C语言的指针类型详细解析
查看>>
高仿QQ消息列表左滑功能
查看>>
Origin 2019b 合法获取与使用介绍——正版软件&最新最实用教程分享
查看>>
nyoj 求余数
查看>>
用dependency:tree查看maven引入jar包的传递依赖
查看>>
javascript Date日期类对象的使用
查看>>
【JQuery】性能优化方法
查看>>
hibernate之处理视图
查看>>
BZOJ-2733 永无乡
查看>>
13-持久化-文件
查看>>
Mac上MySQL忘记root密码且没有权限的处理办法&workbench的一些tips (转)
查看>>
机器学习一个完整的项目过程
查看>>
PV,AC,EV解释和计算公式
查看>>