其他分享
首页 > 其他分享> > 1153. 字符串转化

1153. 字符串转化

作者:互联网

给出两个长度相同的字符串,分别是 str1 和 str2。请你帮忙判断字符串 str1 能不能在 零次 或 多次 转化后变成字符串 str2。

每一次转化时,将会一次性将 str1 中出现的 所有 相同字母变成其他 任何 小写英文字母(见示例)。

只有在字符串 str1 能够通过上述方式顺利转化为字符串 str2 时才能返回 True,否则返回 False。

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

import java.util.Arrays;

class Solution {
    public boolean canConvert(String str1, String str2) {
        if (str1.equals(str2)) {
            return true;
        }
        int[] from = new int[26], to = new int[26];
        Arrays.fill(from, -1);
        Arrays.fill(to, -1);
        for (int i = 0; i < str1.length(); i++) {
            int a = str1.charAt(i) - 'a', b = str2.charAt(i) - 'a';
            if (from[a] >= 0 && from[a] != b) {
                return false;
            }
            from[a] = b;
            to[b] = a;
        }
        for (int i : to) {
            if (i < 0) {
                return true;
            }
        }
        return false;

    }
}

标签:return,int,str2,str1,1153,转化,Arrays,字符串
来源: https://www.cnblogs.com/tianyiya/p/15819018.html