[LeetCode] 205. Isomorphic String (Python)

2025. 1. 28. 12:21·코딩 테스트
728x90

Problem

Solution

Array

두 개의 문자열 s, t가 동형(isomorphic)인지 확인하는 문제. s에 존재하는 문자를 가지고 t를 만들 수 있으면 두 문자열 s, t는 동형이다. 단, 문자의 순서를 유지하며 모든 문자를 다른 문자로 바꿀 수 있어야한다. 두 문자가 같은 문자로 맵핑되어서는 안된다.

 

처음에 dictionary로 character 개수만 카운트해서 비교했는데 알고보니 문제 이해를 잘 못했다.

엣지 케이스인 s = bbbaaaba, t = aaabbbba 에서 마지막에서 두번째 문자에서 조건을 만족하지 못하므로 false

Code

class Solution:
    def isIsomorphic(self, s: str, t: str) -> bool:
        answer = False
        sLi , tLi = [], []

        if len(s) != len(t):
            return answer

        for idx in s:
            sLi.append(s.index(idx))

        for idx in t:
            tLi.append(t.index(idx))

        if sLi == tLi:
            answer = True
        return answer

 

Complexity

Time Complexity

첫번째 for 문에서 문자열 s의 길이만큼 반복문을 도므로 O(N)이다.

문자열 t 도 마찬가지.

그 다음으로 두 리스트의 길이를 비교할 때도 O(N)이므로 총 시간 복잡도는 O(N)이다.

 

Space Complexity

s, t문자열 각각 문자열의 길이만큼 리스트를 사용하므로 공간 복잡도는 O(N) 이다.

 

 

참고

https://velog.io/@heyggun/2024-day-93.-Leetcode-205.-Isomorphic-Strings

728x90
저작자표시 비영리 변경금지 (새창열림)

'코딩 테스트' 카테고리의 다른 글

[LeetCode] 9. Palindrome Number (Python)  (0) 2025.01.30
[LeetCode] 290.Word Pattern (Python)  (0) 2025.01.28
[LeetCode] 202. Happy Number (Python)  (0) 2025.01.27
[HackerRank] Contacts (Python)  (0) 2025.01.18
[HackerRank] Find the Running Median (Python)  (0) 2025.01.18
'코딩 테스트' 카테고리의 다른 글
  • [LeetCode] 9. Palindrome Number (Python)
  • [LeetCode] 290.Word Pattern (Python)
  • [LeetCode] 202. Happy Number (Python)
  • [HackerRank] Contacts (Python)
zoodi
zoodi
IT/개발 관련 지식을 기록하는 블로그입니다.
  • zoodi
    오늘의 기록
    zoodi
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 후기
        • 컨퍼런스
        • 일상리뷰
      • 금융경제
        • 뉴스
        • 금융IT용어
        • 경제 및 부동산
      • 코딩 테스트
      • 스터디
        • JAVA
        • Kotlin
        • Spring
        • React, Nextjs
        • 인공지능 AI
        • Cloud & k8s
        • Kafka & OpenSearch
        • Database
        • Network
        • Algorithm
        • Hadoop
        • LINUX
        • R Programming
        • 기타 (소공, 보안)
      • 도서
      • 기타
  • 블로그 메뉴

    • 홈
    • 스터디
    • 금융경제
    • 후기
    • 기타
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    LeetCode
    db
    docker
    C++
    스프링
    디비
    이분탐색
    CodingTest
    카프카
    Spring
    Kotlin
    코틀린
    java
    네트워크
    자바
    자료구조
    kafka
    코딩테스트
    프로그래머스
    codility
    코딜리티
    코딩
    springboot
    알고리즘
    코테
    pythoncodingtest
    MySQL
    Python
    리트코드
    금융용어
  • 최근 댓글

  • 최근 글

  • 300x250
  • hELLO· Designed By정상우.v4.10.4
zoodi
[LeetCode] 205. Isomorphic String (Python)
상단으로

티스토리툴바