일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- jwt메서드
- REST란
- spring서버
- Filter
- github
- JPA주의사항
- json gson 차이
- 스프링 부트 기능
- @IdClass
- 스프링부트오류
- 빈생성안됨
- git
- Spring Spring boot 차이
- Error creating bean with name
- REST API 규칙
- uncheck Exception
- 스프링 부트 공식 문서
- JPA
- 인텔리제이
- 복합키
- queryDSL
- Unsatisfied dependency
- JoinColumn
- ERD 작성
- jpa에러
- Q 클래스
- json
- jpa회원가입
- 최종 프로젝트
- 1차캐시
- Today
- Total
목록전체 글 (208)
Everyday Dev System
empty() 메서드는 Stack 클래스에 정의되어 있으며, isEmpty() 메서드는 Collection 인터페이스에 정의되어 있다는 데에 차이가 있습니다. JDK 1.0에서는 컬렉션 프레임워크가 존재하지 않았습니다. Stack, Vector, HashTable 은 Collection 프레임워크 이전부터 자바에서 제공하는 기본 데이터 구조입니다. JDK 1.2에서 Collection 프레임워크가 추가되었으며 List, Map과 같은 표준 인터페이스가 도입되었습니다. 그러나 이러한 표준 Collection 인터페이스에서는 메소드들이 다른 규약(convention)으로 명명 되었습니다. 이러한 변화는 JDK 1.2에 도입된 자바 빈 표준에 영향을 받은 것으로 보입니다. 이러한 메서드 이름은 이전의 Stac..
문제 링크 : https://school.programmers.co.kr/learn/courses/30/lessons/42577 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 고득점 키트 해시 카테고리 문제 해설 https://sedate-nitrogen-21c.notion.site/4e2215495278436e905f4a4d181a2f20?pvs=4 고득점 키트 : 해시 1. 완주하지 못한 선수 sedate-nitrogen-21c.notion.site 문제 요약 해당 문제는 전화 번호부를 Stirng 배열 타입의 매개변수로 전달받아 접두사가 있는지 여부..
메모이제이션 은 값비싼 함수 호출의 결과를 캐싱하고 동일한 입력이 다시 발행할 때 불필요하게 다시 계산하는 대신 캐싱된 결과를 반환하는 프로그래밍 기술입니다. 동일한 입력으로 여러 번 호출되는 함수 또는 컴포넌트가 있을 때 유용합니다. 아래와 같이 활용 할 수 있습니다. 동적 계획법 복잡한 문제를 간단한 여러가지 문제로 나눠 푸는 방법 중복된 부분을 제외하여 한번만 계산하고도 구할 수 있어 시간,공간 복잡도를 감소시킴 피보나치를 구하는 방법 1) 재귀 함수 호출 숫자가 커질수록 함수를 되풀이하므로 시간이 오래 소요된다. 시간복잡도:O(2^n) static long fibo(int N) { if(N
MariaDB는 MySQL에서 파생되었다. 먼저, MySQL은 AB사에서 제작한 SW 입니다. Oracle이 이를 인수하며 상업을 목적으로 이용할 경우에 유료화를 시켰습니다. 이러한 정책에 반발한 AB사의 핵심 창업자 중 한 명이였던 "몬티 와이드니어스"가 MySQL 코드 기반으로 한 오픈소스 RDBMS를 개발한 것이 현재의 Maria DB 입니다. 오픈소스와 친숙한 Linux 에서는 MySQL 대신 MariaDB를 표준으로 채택하여 활용합니다. 모든 기능 무료로 활용 가능 MySQL은 Community 버전도 교육, 개발용으로 활용 가능하나 성능에 한계가 있습니다. 그렇지만, MariaDB는 제약없이 모든 기능을 무료로 사용할 수 있습니다. MySQL 코드 기반 오픈 소스 명령어, 사용 방법, 구조가 ..
코드를 작성한 후에 코드를 줄이거나 더욱 빠르게 할 수 있는 방법을 생각해보았다. 문제점 : 코드를 짜는데 시간이 많이 걸린다.. 많이 풀다보면 익숙해지지 않을까? 1. 개선 전의 코드 class Solution { public int[] solution(int numer1, int denom1, int numer2, int denom2) { int[] answer = {0,0}; int denom, numer = 0; if(denom1==denom2){ denom = denom1; numer = numer1 + numer2; }else { denom = (denom1*denom2); numer = (denom1*numer2) + (denom2*numer1); } int denom_result = den..
30분 고민해서 나온 코드와 이에 따른 개선 후의 코드이다. 해당 문제 풀 때의 나의 문제점 : 시간이 많이 소요됨. 코드가 길다 1. 개선 전 코드 class Solution { public String solution(String my_string, String overwrite_string, int s) { String answer = my_string.substring(0,s); int arr1_length = my_string.length(); int arr2_length = overwrite_string.length(); for(int j=0; j0){ for(int i=s+arr2_length; i0){ for(int i=s+arr2_length; i
요약 concat() 메서드는 새로운 인스턴스를 생성하기 때문에 성능, 속도 면에서 떨어지므로, 간단한 문자열 추가의 경우에는 '+' 연산자를 사용하는 것이 좋다. 복잡하거나 반복적인 문자열 수정 시 StringBuilder 혹은 StringBuffer를 사용하는 것이 좋다. 그러나, 멀티스레드를 이용하여 하나의 문자열을 수정할 필요가 있다면 StringBuffer 클래스를, 그렇지 않다면 StringBuilder 클래스를 사용하여 동작 속도를 빠르게 하는 것이 좋다. 1. concat() String 클래스에서 제공하는 기본 메서드. 합친 문자열을 String으로 생성한다. concat() 메서드를 활용하면 새로운 인스턴스를 생성하기 때문에 성능, 속도 면에서 떨어진다. import java.util...
class Solution { public int solution(int[] arr1, int[] arr2) { // arr1이 크면 1, arr2가 크면 -1 , 같다면 0 int arr1_length = arr1.length; int arr2_length = arr2.length; if(arr1_length == arr2_length){ int arr1_sum =0; int arr2_sum =0; for(int i=0; i arr2_length ? 1 : -1; } } }
배열에서 문자열 대소문자 변환하기 Stream 함수를 모르는 사람들이 있을 수 있고, 라이브러리를 임포트하여 사용해야 하기 때문에, 가독성과 짧은 코드를 위해 삼항 연산자를 활용한 코드가 가장 적절한 것 같다. 1. if ~ else()문 활용 class Solution { public String[] solution(String[] strArr) { int length = strArr.length; String[] answer = new String[length]; for(int i=0; i
1~n 까지의 숫자 중 k의 배수를 배열로 저장하여 오름차순으로 반환하라. 코드 틀: class Solution { public int[] solution(int n, int k) { int[] answer = {}; return answer; } } 정답을 못 풀어서 그냥 풀이를 보았다. 타인의 풀이: 더보기 class Solution { public int[] solution(int n, int k) { int length = n / k; int[] answer = new int[length]; for (int i = 1; i