상세 컨텐츠

본문 제목

HashMap 기본 (FindFirstUniqueCharacter...)

똑똑한 개발/Algorithm 과 Data Structure

by 성댕쓰 2022. 1. 4. 22:52

본문

문제: 주어진 String s에서 반복되지 않는 첫번째 character의 index를 return하여라

 

 

def FindFirstUniqueCharacter(stringParam : str) -> int:
    hashMap = {}
    for c in stringParam:
        if c in hashMap:
            hashMap[c] += 1
        else:
            hashMap[c] = 1

    for idx, c in enumerate(stringParam):
        if hashMap[c] == 1:
            return idx

    return -1

print(FindFirstUniqueCharacter("nocodeprogram"))
print(FindFirstUniqueCharacter("nownocodeprogram"))

******************
0
2

 

 

문제: 주어진 두 string s와 t가 isomorphic 관계인지 찾아서 return하여라
 
 
 
def IsIsomorphic(strA : str, strB : str) -> bool:
    hashMap = {}

    if len(strA) != len(strB):
        return False
    
    for idx in range(0,len(strA)):
        if not strA[idx] in hashMap:
            hashMap[strA[idx]] = strB[idx]
        else:
            if strB[idx] == hashMap[strA[idx]]:
                continue
            else:
                return False

    return True


print(IsIsomorphic(strA="aaaccd", strB="xxxyyz"))
print(IsIsomorphic(strA="aaaccd", strB="xcxyyz"))

****************

True
False

 

 

참조 : 코딩 테스트, 초급, 문제풀이1,2 - YouTube

 

'똑똑한 개발 > Algorithm 과 Data Structure' 카테고리의 다른 글

DFS-BFS 기본 #2  (0) 2022.01.06
DFS-BFS 기본 #1  (0) 2022.01.06
파이썬 기초 문법 정리  (0) 2022.01.04
HashTable 기초  (0) 2022.01.03
Hash Table 만들기  (0) 2022.01.03

관련글 더보기

댓글 영역