알고리즘

언어/Python

파이썬 알고리즘 - 문자열로 서로 다른 단어 만들어내기(Anagram)

개발자 면접 트레이딩 - 파이썬 알고리즘 문제(3) (1). 개발자 면접 트레이닝 - 두 문자열이 구성 요소가 같은지 확인(Anagram)하는 알고리즘 ① 파이썬의 join, sorted, strip 함수를 활용 ② 소문자로 변환 후 정렬이 핵심 ③ 예를들어 elivs 는 = lives , basic = isabc 와 같이 구성요소가 같다. (2). 소스 코드 PYTHON #anagram.py import unittest #두 문자열을 입력받아 정렬 한 후 같은 지 비교 (문자로 서로 다른 단어 만들어 내기) def anagram(str1, str2): if ''.join(sorted(str1.lower())).strip() == ''.join(sorted(str2.lower())).strip(): #대..

언어/Python

파이썬 알고리즘 - 문자열에 포함된 문자들이 전부 유일한지 검사

개발자 면접 트레이딩 - 파이썬 알고리즘 문제(1) (1). 개발자 면접 트레이닝 - 문자열에 포함된 문자들이 전부 유일한지 검사하는 알고리즘 ① 모든 문자를 비교하는 것은 시간 복잡도가 높으므로, 부적합하다고 볼 수 있다. ② Hash를 사용하여 시간 복잡도를 낮추는 방향으로 작성해 보도록 하자. ③ 아스키 코드는 모두 256개 ④ 예를들어 ABCD 는 -> 순수 문자열 , ABAD -> 중복 문자열 (2). 소스 코드 PYTHON # isUniqChar.py def isUniqChar(str): if(len(str) > 256): return False hash = [False] * 256 for ch in str: #print(ord(ch)) 문자를 아스키 코드번호로 변환 if(hash[ord(ch..

[좋은사람]
'알고리즘' 태그의 글 목록