본문 바로가기
반응형

Coding Test/LeetCode57

[LeetCode] 1. Two Sum [Python(파이썬), JAVA(자바)] '파이썬 알고리즘 인터뷰'를 보고 작성한 글입니다. 😀 문제 👉 1. 문제 (두 수의 합) 덧셈하여 타겟을 만들 수 있는 배열의 두 숫자 인덱스를 리턴하라. 2. 풀이 해시를 이용한 풀이 3. 코드 (Python) 해시를 이용한 풀이 class Solution: def twoSum(self, nums: List[int], target: int) -> List[int]: dic = {} for idx, val in enumerate(nums): num = target - val if num in dic: return [dic[num], idx] else: dic[val] = idx 결과 : 방식 Status Runtime Memory Language 해시 [Accepted] 60 ms 15... 2021. 11. 23.
[LeetCode] 344. Reverse String [Python(파이썬)] &#39;파이썬 알고리즘 인터뷰&#39;를 보고 작성한 글입니다. 😀 문제 👉 1. 문제 (문자열 뒤집기) 문자열을 뒤집는 함수를 작성하라. 입력값은 문자 배열이며,리턴 없이 리스트 내부를 직접 조작하라. 2. 풀이 투 포인터를 이용한 풀이 reverse()를 이용한 문제 풀이 3. 코드 투 포인터를 이용한 풀이 class Solution: def reverseString(self, s: List[str]) -> None: left, right = 0, len(s) - 1 while left < right: s[left], s[right] = s[right], s[left] left += 1 right -= 1 reverse()를 이용한 풀이 class Solution: def reverseString(.. 2021. 11. 23.
[LeetCode] 125. Valid Palindrome [Python(파이썬)] &#39;파이썬 알고리즘 인터뷰&#39;를 보고 작성한 글입니다. 😀 문제 👉 1. 문제 (유효한 팰린드롬) 주어진 문자열이 펠린드롬인지 확인하라. 대소문자를 구분하지 않으며, 영문자와 숫자만을 대상으로 한다. 2. 풀이 알파벳과 숫자가 아닌 경우 제외 소문자 변환 (대소문자를 구분하지 않으므로) 문자의 앞뒤 비교 3. 코드 리스트를 이용한 풀이 class Solution: def isPalindrome(self, s: str) -> bool: strs = [] for char in s: if char.isalnum(): # 알파벳과 숫자인지 확인 strs.append(char.lower()) while len(strs) > 1: if strs.pop(0) != strs.pop(): return Fals.. 2021. 11. 23.
반응형