zoukankan      html  css  js  c++  java
  • 205. Isomorphic Strings(字符串同构)

    Given two strings s and t, determine if they are isomorphic.

    Two strings are isomorphic if the characters in s can be replaced to get t.

    All occurrences of a character must be replaced with another character while preserving the order of characters. No two characters may map to the same character but a character may map to itself.

    Example 1:

    Input: s = "egg", t = "add"
    Output: true
    

    Example 2:

    Input: s = "foo", t = "bar"
    Output: false

    Example 3:

    Input: s = "paper", t = "title"
    Output: true

    解释:就是像以前语文题的 aabb型 开开心心和快快乐乐就是字符同构。
    方法一:记录摆放位置
    public boolean isIsomorphic(String s, String t) {
        int[] preIndexOfS = new int[256];
        int[] preIndexOfT = new int[256];
        for (int i = 0; i < s.length(); i++) {
            char sc = s.charAt(i), tc = t.charAt(i);
            if (preIndexOfS[sc] != preIndexOfT[tc]) {
                return false;
            }
            preIndexOfS[sc] = i + 1;
            preIndexOfT[tc] = i + 1;
        }
        return true;
    }

    方法二:用hashMap记录对应关系

    public class Solution {
        public boolean isIsomorphic(String s, String t) {
            
            HashMap<Character,Character> map=new HashMap<Character,Character>();
            for(int i=0;i<s.length();i++){
                char a=s.charAt(i),b=t.charAt(i);
                if(map.containsKey(a)){
                    if(map.get(a)!=b){
                        return false;
                    }
                }else{
                    if(!map.containsValue(b)){
                        map.put(a,b);
                    }else{
                        return false;
                    }
                }
            }
            return true;
        }
    }
    苟有恒,何必三更眠五更起;最无益,莫过一日暴十日寒。
  • 相关阅读:
    HDU 3507 PrintArticle (单调队列优化)
    BZOJ 1911 (特别行动队)
    POJ 3709 K-Anonymous Sequence (单调队列优化)
    邓_php面试【002】——完整版
    邓_正则表达式
    邓_PHP面试2
    邓_PHP面试【001】
    网站大全
    Jquery 获取对象的几种方式介绍
    邓_Jquery测试题
  • 原文地址:https://www.cnblogs.com/shaer/p/10847361.html
Copyright © 2011-2022 走看看