| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
- 우선순위 큐
- Algorithm
- string
- two pointers
- HashMap
- 부분배열
- Java
- PCCP
- binary tree
- greedy
- Array
- coding
- ArrayList
- DP
- programmers
- priority queue
- 브루트포스
- 리트코드
- recursion
- 재귀함수
- 깊이우선탐색
- leetcode
- dfs
- 알고리즘
- hashset
- Today
- Total
목록Algorithm/Leetcode (45)
지식창고
[Java] LeetCode 472. Concatenated Words 문 제 : 문자열 배열 words가 주어진다. words에 있는 각 문자열들중 자신을 제외한 words 안에 있는 문자열들로만 이루어져 있는 문자열만 반환해라. { 1
[Java] LeetCode 2359. Find Closest Node to Given Two Nodes 문 제 : 노드의 방향을 나타내는 정수형 1차원 배열 edges가 주어지고, 시작하는 노드 2개 node1 과 node2 가 주어졌을 때, node1 과 node2 으로부터 공통적으로 접근할 수 있으며, 각각의 노드로부터의 거리가 최소로 될 수 있는 노드의 index 를 구하여라. { 2
[Java] LeetCode 910. Smallest Range II 문 제 : 정수형 1차원 배열 nums와 정수 k가 주어진다. nums[i]는 nums[i]-k 혹은 nums[i]+k 로 바꿀 수 있다. 위 상황을 가정했을 때 max(nums) - min(nums) 가 최소가 되게 하고 그 값을 구하여라. { 1
[Java] LeetCode 93. Restore IP Addresses 문 제 : 숫자로만 이루어진 String s가 주어진다. s에 적절히 점을 4개 추가하여 만들수 있는 유효한 IP주소 String을 모두 찾아서 List 형태로 반환해라. { 1 = s.length()) { res.add(temp.substring(0,temp.length()-1)); return; } for (int i=1; i
[Java] LeetCode 491. Non-decreasing Subsequences 문 제 : 정수형 1차원 배열 nums가 주어진다. 증가하는 형태의 부분배열을 모두 구하여라. { 1 모든 부분배열을 구해야하기 때문에 현재 인덱스가 생략된 상태의 부분배열을 구하기 위함이다. 모든 상황 : 인덱스만 +1 한 후 다시 solve 함수를 호출한다. -> 이렇게 되면 pre에 저장되어 있는 값은 그대로이기 때문에 index와 pre값이 차이가 벌어지게 되고, 붙어있지 않는 부분배열도 검사할 수 있게 된다. 결 과 : class Solution { public List findSubsequences(int[] nums) { Set set = new HashSet(); List temp = new ArrayL..