업로드중..
169.majority-element
88. merge-sorted-array 26. remove-duplicates-from-sorted-array 27. remove-element
위에서 주어진 4가지 기능을 하는 stack을 구현하면 된다.
reverse polish notation으로 적힌 수식을 계산하는 것이 문제이다.reverse polish notation이란 연산자가 피연산자 뒤에 오는 것을 말한다.예시를 확인하면 이해하기 쉽다.
주어진 리스트에서 target을 만들 수 있는 두 숫자를 골라서 그 숫자의 인덱스를 반환하는 문제이다
리스트에서 중복되는 숫자의 인덱스 차이가 k보다 작으면 true, 크다면 false를 반환한다. two-sum 문제와 비슷하게 접근하면 된다고 생각했다. 우선 dictionary를 사용하여 key에는 값, value에는 인덱스를 저장한다. 중복되는 값이 2개라
ransomNote와 magazine이라는 두 개의 문자열이 주어진다.이때 magazine에 있는 문자를 조합하여 ransomNote를 만들 수 있다면 True,아니면 False를 반환한다.우선 magazine에 있는 문자의 갯수를 저장한 dict를 만든다그리고 ran
s에 있는 문자들을 모두 사용해서 t를 만들 수 있으면 True, 아니면 False를 반환앞에서 풀었던 문제와 비슷하게 풀면된다.애너그램은 사용한 문자가 모두 똑같아야한다.즉, Counter가 다르다면 False를 반환하면 된다.시간을 조금 더 줄이려면 판단을 빠르게
linked list의 head가 주어지면 오름차순으로 정렬한 후 반환한다.가장 먼저 떠오른 풀이는 linked list에 담긴 수를 새로운 리스트에 넣어서내장 함수인 sort를 사용하여 정렬하는 것이다.
🖊 풀이
주어진 nums에서 가장 최소값을 반환하면 된다. 앞에서 풀었던 문제와 비슷하다. 어떤 값을 기준으로 두 묶음으로 정렬된 배열이 주어진다.그렇기 때문에 이분 탐색을 이용하면 된다.우선 ans값은 min함수를 통해 가장 작은 값으로 계속 갱신해주는 데이터이다.기본적인 틀
문자열 탐색이 가능한 trie를 설계하면 된다. 입력한 문자열 전체 또는 입력 문자열로 시작하는 문자열의 존재 여부에 따라 True/False를 반환한다.trie란 탐색 트리의 일종으로 비교적 빠른 문자 탐색이 가능하고,공간 복잡도면에서도 효율적인 자료구조이다.문자열의
다음과 같은 역할을 하는 데이터 구조를 설계하면 된다.1\. word를 추가한다.2\. 입력한 문자를 찾아서 있다면 True, 없다면 False를 반환한다. ( '.' 에는 어떠한 문자도 가능하다.)앞에서 풀었던 문제와 비슷한 방법으로 접근했다.
input에는 board를 구성하는 문자가 주어지고, 내가 찾고 싶은 단어가 리스트 형태로 주어진다. 이때 찾고 싶은 단어를 보드에서 만들 수 있다면 그 단어를 return 값으로 준다.
k번째로 큰 값을 찾아서 return 값으로 반환하면 된다.가장 먼저 생각난 풀이는 파이썬의 내장 함수인 sorted를 사용하여 정렬하는 것이다.우선 내림 차순으로 정렬한 후 k-1한 값에 해당하는 숫자를 반환하면 쉽게 구할 수 있다.
nums1과 nums2에서 각각 하나씩 숫자를 짝지은 후, k개 만큼 return값으로 반환한다.단 조합의 합이 작은 순서대로 반환해야한다.우선 2중 for문을 돌면서 가능한 조합이 담긴 리스트를 만들어 준다.그 후 lambda 함수를 활용하여 조합의 합이 작은 순서로
주어진 graph를 clone 해오면 된다.