Error: Cannot invoke because "this.repository" is null
·
🪲 bugs
발생 상황 PostgreSQL 에 hibernate로 처음 연동 후, 테스트용 API를 보내본 상황 java.lang.NullPointerException: Cannot invoke "project.labelingtool.backend.api.resource.adapter.out.persist.BankRepository.findAll()" because "this.repository" is null at project.labelingtool.backend.api.resource.adapter.out.persist.ResourceRepositoryImpl.findAllBanks(ResourceRepositoryImpl.java:24) ~[main/:na] at project.labelingtool.back..
Error parsing HTTP request header
·
🪲 bugs
발생 상황 프로젝트 postman 으로 로컬환경에서 통합테스트 중 API 요청할 때 다음과 같은 에러가 발생하였다. 2023-09-02T22:10:25.550+09:00 INFO 72091 --- [nio-8080-exec-1] o.apache.coyote.http11.Http11Processor : Error parsing HTTP request header Note: further occurrences of HTTP request parsing errors will be logged at DEBUG level. java.lang.IllegalArgumentException: Invalid character found in method name [0x160x030x010x000xf70x010x000x0..
LeetCode : 383. Ransom Note
·
🧩 Algorithm
문제 링크 문제 먼저 읽기 두 문자열 ransomNote와 magazine이 주어졌을 때, magazine의 문자를 사용하여 ransomNote를 구성할 수 있으면 true를 반환하고 그렇지 않으면 false를 반환합니다. magazine 문자는 ransomNote에서 한 번만 사용할 수 있습니다. Input: ransomNote = "aa", magazine = "ab" Output: false 어떻게 풀까? 생각 HashMap을 사용해서 magazine 의 문자 개수를 더하고하고, ransomNote 문자를 순회하면서 HashMap에 저장된 문자 개수를 차감하여 magaziine의 모든 문자들로 ransomNote를 이룰 수 있는 지 확인해본다. 이 방법으로 했을 때 O(2N)의 시간 복잡도가 들 것..
LeetCode : 155. Min Stack
·
🧩 Algorithm
문제 링크 문제 먼저 읽기 푸시, 팝, 탑, 최소 요소 검색을 일정 시간 내에 지원하는 스택을 구현하시오. 어떻게 풀까? 생각 ArrayList 혹은 int[]로 구현해볼 수 있다. 수도코드 class MinStack { private List stack; private List minStack; // 최소값 저장 스택 public MinStack() { // 스택 초기화 this.stack = new ArrayList(); this.minStack = new ArrayList(); } public void push(int val) { if (stack.size() == 0) { // 첫요소일 때. 처음에 이부분을 생각하지 못해서 emptyStackException이 발생했었다. this.minStack..
LeetCode : 150. Evaluate Reverse Polish Notation
·
🧩 Algorithm
문제 링크 문제 먼저 읽기 문자 배열이 주어집니다. 문자는 각각 사칙 연산 1글자씩이거나 숫자인데 Reverse Polish Notation (후위 표기법)산술식을 나타냅니다. 연산의 결과를 반환하세요. Input: tokens = ["10","6","9","3","+","-11","*","/","*","17","+","5","+"] Output: 22 Explanation: ((10 * (6 / ((9 + 3) * -11))) + 17) + 5 = ((10 * (6 / (12 * -11))) + 17) + 5 = ((10 * (6 / -132)) + 17) + 5 = ((10 * 0) + 17) + 5 = (0 + 17) + 5 = 17 + 5 = 22 그 외 조건 1
LeetCode : 167. Two Sum II - Input Array Is Sorted
·
🧩 Algorithm
문제 링크 문제 먼저 읽기 오름차순으로 정렬되고 인덱스 1부터 시작하는 배열이 주어집니다. 합하여 특정 목표 숫자를 만드는 두 인덱스를 정수 배열로 반환하세요. 반환되는 정수 배열은 [index1, index2] 로 길이가 2이며 index1 < index2 입니다. 반드시 하나의 해결책이 있습니다. 동일한 요소를 2번 쓸 일은 없습니다. 어떻게 풀까? 생각 2개의 pointer로 합을 비교합니다. pointer는 양 끝에 위치하여 한쪽 방향으로만 움직이게 합니다. target number와 같으면 멈추고 반환합니다. 수도코드 class Solution { public int[] twoSum(int[] numbers, int target) { int pointerA = 0; int pointerB = n..