Leetcode (106) 썸네일형 리스트형 [Leetcode] 134. Gas Station - JS https://leetcode.com/problems/gas-station/description/?envType=study-plan-v2&envId=top-interview-150 1. 문제 분석문제분석--------------------- 원형으로 생긴 도로에 n개의 주유소가 있다.- i번째에 위치한 주유소의 기름의 양은 gas[i]이다.- 무제한 탱크통을 가진 차로 i번째 주유소에서 다음인 i+1번째 주유소로 이동하는 비용은 cost[i]- 하지만 여행 시작할 때, 빈 탱크로 하나의 주유소에서 시작한다.- gas, cost 두 배열이 주어질 때, 시계방향으로 한번 모든 주유소를 들를 수 있으면 첫번째 주유소 인덱스를 반환하고 그렇지 않으면 -1을 반환하라.- 만약 해법이 있다면 이것은 유일한 해법이.. [Leetcode] 238. Product of Array Except Self - JS https://leetcode.com/problems/product-of-array-except-self/description/?envType=study-plan-v2&envId=top-interview-150 1. 문제 분석문제분석--------------------- 정수배열 nums- answer 배열 반환- answer[i]는 nums[i]를 제외한 모든 요소의 곱- nums는 32bit 정수로 이루어져있다.- 나누기 연산을 사용하지 않고 시간복잡도 O(n)이어야 한다.제한조건--------------------- 2 2. 접근 방법접근방법--------------------nums 길이와 동일한 prefix, subfix 배열을 선언한다.prefix 배열에는 현재 인덱스 이전의 요소들의 곱을 .. [Leetcode] 380. Insert Delete GetRandom O(1) - JS https://leetcode.com/problems/insert-delete-getrandom-o1/description/?envType=study-plan-v2&envId=top-interview-150 1. 문제 분석문제분석--------------------insert()아이템이 존재하지 않으면, 아이템을 set에 삽입한다.아이템이 존재하지 않으면 true를 반환하고 그렇지 않으면 false를 반환하라.remove()아이템이 존재하면, 아이템을 set에서 제거한다.아이템이 존재했다면 true를 반환하고 그렇지 않으면 false를 반환하라.getRandom()현재 set의 요소 중에서 무작위 요소를 반환하라.최소한 1개의 요소가 존재한다는 것을 보장한다.무작위 요소가 반환될 확률은 동일해야한다.제한.. [Leetcode] 274. H-Index - JS https://leetcode.com/problems/h-index/description/?envType=study-plan-v2&envId=top-interview-150 1. 문제 분석문제분석--------------------- 정수 배열 citations- citations[i]는 i번째의 논문이 인용된 횟수를 의미- h-index는 h번 이상 인용된 h갯수의 논문을 의미제한조건--------------------- n == citation.length- 1 2. 접근 방법접근방법--------------------citations 배열을 오름차순 정렬한다.오름차순 정렬을 함으로써 첫번째 인덱스부터 순회 시현재 논문을 기준으로 이후에 등장한 논문들은 인용횟수가 현재 논문 보다는 많다는 가정이 성.. [Leetcode] 45. Jump Game II - JS https://leetcode.com/problems/jump-game-ii/description/?envType=study-plan-v2&envId=top-interview-150 1. 문제 분석문제분석--------------------- 정수 배열 nums, 배열 길이 n, 초기에 nums[0]에 위치함- 각 요소 nums[i]는 i위치에서의 최대 점프 길이- 마지막 요소에 도달 가능한 배열만 주어진다.- 마지막 위치(nums[n - 1])에 도달하는 최소한의 점프 수를 반환하라.제한조건--------------------- 0 2. 접근 방법이번 문제는 마지막 인덱스에 모두 도달 가능한 테스트 케이스만 주어지고마지막 인덱스에 도달하기 위한 최소한의 점프 수를 반환하는 문제이다.ex) nums =.. [Leetcode] 55. Jump Game - JS https://leetcode.com/problems/jump-game/description/?envType=study-plan-v2&envId=top-interview-150 1. 문제 분석문제분석--------------------- 정수 배열 nums- 처음에 배열 첫번째 인덱스에 위치함- 각 배열의 요소는 현재 위치에서 최대 점프 가능한 길이- 마지막 인덱스에 도달할 수 있으면 true, 그렇지 못하면 false를 반환제한조건--------------------- 1 2. 접근 방법현재 위치 + 현재 위치의 최대 점프 >= 목표 위치를 만족하는지 안하는지를 확인한다.- goal = 목표 위치 인덱스- 역순으로 goal 직전에서부터 첫번째 인덱스로 순회한다.만약 위에서 언급한 조건에 성립하면, g.. [Leetcode] 122. Best Time to Buy and Sell Stock II - JS https://leetcode.com/problems/best-time-to-buy-and-sell-stock-ii/description/?envType=study-plan-v2&envId=top-interview-150 1. 문제 분석문제분석--------------------- 정수배열 prices, prices[i]는 i번째 날짜의 주가이다.- 매일 주식을 사거나 팔 수 있다.- 주식은 최대 1개만 가질 수 있다.- 그날 사서 같은 날에 팔 수도 있다.- 최대 이익을 반환하라.제한조건--------------------- 1 2. 접근 방법접근방법--------------------이전 문제와 달리 한번만 사고 파는 것이 아닌 여러번 사고 팔수 있다.즉, profit이 누적될 수 있다는 뜻이다... [Leetcode] 121. Best Time to Buy and Sell Stock - JS https://leetcode.com/problems/best-time-to-buy-and-sell-stock/?envType=study-plan-v2&envId=top-interview-150 1. 문제 분석문제분석--------------------- 정수 배열 prices - prices[i]는 i 번째 일의 주식 가격- 어느 하루에 주식을 사서 다른 날에 팔아 최대의 이익을 내고 싶다.- 이 때 최대 이익을 반환하라.제한조건--------------------- 1 2. 접근 방법접근방법--------------------배열 요소에서 사는 날까지 순회하여 중첩 반복문을 만들 필요가 없다.1. 배열을 n회만 순회하여, 파는 날을 가지고 이익을 계산한다.2. 이익은 현재 반복문에서 구한 값과.. 이전 1 ··· 8 9 10 11 12 13 14 다음