zoukankan      html  css  js  c++  java
  • Leetcode练习(Python):哈希表类:第205题:给定两个字符串 s 和 t,判断它们是否是同构的。 如果 s 中的字符可以被替换得到 t ,那么这两个字符串是同构的。 所有出现的字符都必须用另一个字符替换,同时保留字符的顺序。两个字符不能映射到同一个字符上,但字符可以映射自己本身。

    题目:
    给定两个字符串 s 和 t,判断它们是否是同构的。  如果 s 中的字符可以被替换得到 t ,那么这两个字符串是同构的。  所有出现的字符都必须用另一个字符替换,同时保留字符的顺序。两个字符不能映射到同一个字符上,但字符可以映射自己本身。
    思路:
    使用两个哈希表来实现,思路较简单。
    程序:
    class Solution:
        def isIsomorphic(self, s: str, t: str) -> bool:
            length1 = len(s)
            length2 = len(t)
            if length1 != length2:
                return False
            myHashMap1 = {}
            myHashMap2 = {}
            for index in range(length1):
                if s[index] not in myHashMap1 and t[index] not in myHashMap2:
                    myHashMap1[s[index]] = index
                    myHashMap2[t[index]] = index
                else:
                    if myHashMap1.get(s[index]) != myHashMap2.get(t[index]):
                        return False
            return True
  • 相关阅读:
    xcode 工具栏中放大镜的替换的说明
    xcode 工具栏中放大镜的替换的简单说明
    xcode 资源管理
    泛型的冒泡,插入,选择,希尔算法
    一套手写ajax加一般处理程序的增删查改
    Android自定义控件_自绘控件
    查看自己Android设备分辨率
    Collection集合 和 Map
    深入理解Java中的面向对象
    webserivce请求头组装
  • 原文地址:https://www.cnblogs.com/zhuozige/p/12787519.html
Copyright © 2011-2022 走看看