美文网首页
205. 同构字符串

205. 同构字符串

作者: 吃饭用盘装 | 来源:发表于2018-06-06 23:48 被阅读14次

内容

给定两个字符串 s 和 t,判断它们是否是同构的。

如果 s 中的字符可以被替换得到 t ,那么这两个字符串是同构的。

所有出现的字符都必须用另一个字符替换,同时保留字符的顺序。两个字符不能映射到同一个字符上,但字符可以映射自己本身。

示例 1:

输入: s = "egg", t = "add"
输出: true
示例 2:

输入: s = "foo", t = "bar"
输出: false
示例 3:

输入: s = "paper", t = "title"
输出: true
说明:
你可以假设 s 和 t 具有相同的长度。


思路

将s和t分别替换成以数字1开头的组合,
规则:遇到第一个陌生字符,用1表示,并记录到map中,以后再次遇到这个字符,直接用map中记录的值来表示
当s,t都被替换成这种组合后,比较是否相同即可


代码

/**
将s和t分别替换成以数字1开头的组合,
规则:遇到第一个陌生字符,用1表示,并记录到map中,以后再次遇到这个字符,直接用map中记录的值来表示
当s,t都被替换成这种组合后,比较是否相同即可

 * @param {string} s
 * @param {string} t
 * @return {boolean}
 */
var isIsomorphic = function (s, t) {
    var map = {};
    var index = 1;
    var result = '',
        result2 = '';
    for (var i of s) {
        map[i] ? null : (map[i] = index, index++);
        result += map[i]
    }

    map = {};
    index = 1;
    for (var i of t) {
        map[i] ? null : (map[i] = index, index++);
        result2 += map[i]
    }

    return result == result2;
};

回到目录

相关文章

  • 205. 同构字符串

    内容 给定两个字符串 s 和 t,判断它们是否是同构的。 如果 s 中的字符可以被替换得到 t ,那么这两个字符串...

  • 205. 同构字符串

  • 205. 同构字符串

    题目描述:给定两个字符串 s 和 t,判断它们是否是同构的。 如果 s 中的字符可以被替换得到 t ,那么这两个字...

  • 205. 同构字符串

  • 205. 同构字符串(Python)

    题目 难度:★★☆☆☆类型:字符串 给定两个字符串 s 和 t,判断它们是否是同构的。 如果 s 中的字符可以被替...

  • 290. 单词规律 与 205. 同构字符串

    单词规律 给定一种规律 pattern 和一个字符串 str ,判断 str 是否遵循相同的规律。 这里的 遵循 ...

  • 同构字符串

    题目 难度级别:简单 给定两个字符串 s 和 t,判断它们是否是同构的。 如果 s 中的字符可以被替换得到 t ,...

  • 同构字符串

    给定两个字符串 s 和 t,判断它们是否是同构的。 如果 s 中的字符可以被替换得到 t ,那么这两个字符串是同构...

  • 字符串的最小表示法

    字符串的循环同构:设S=bcad,且S’是S的循环同构的串。S’可以是bcad或者cadb,adbc,dbca。而...

  • 2019-11-15 同构字符串

    给定两个字符串 s 和 t,判断它们是否是同构的。 如果 s 中的字符可以被替换得到 t ,那么这两个字符串是同构...

网友评论

      本文标题:205. 同构字符串

      本文链接:https://www.haomeiwen.com/subject/njqwsftx.html