일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- JPA
- series
- 위상정렬
- UML
- 데이터 flow
- 세그먼트 트리
- 백준
- Redis
- BFS
- pandas
- 헥사고날 아키텍처
- 자바
- dataframe
- 스프링
- docker
- DP
- ddd
- dfs
- 다익스트라
- java
- 포트앤어댑터 아키텍처
- spring security
- equals
- springboot
- 파이썬
- disjoint set
- 비트마스크
- 문자열
- 이펙티브 자바
- 알고리즘
- Today
- Total
목록전체 글 (95)
코딩못하는사람
https://www.acmicpc.net/problem/22116 22116번: 창영이와 퇴근 A1,1에서 AN,N까지, 경로상의 최대 경사의 최솟값을 출력한다. www.acmicpc.net 1.접근 인접한 격자로 가려면 경사의 절댓값을 지날 수 있어야 한다. 두가지 풀이가 생각났다. 1.이진탐색 경사의 범위가 1 ≤ Ar,c ≤ 1,000,000,000 이므로 가능한 경사의 값을 이진탐색으로 찾아서 값을 찾아가며 (1,1)->(n,n)으로 DFS를 돌려서 찾는 방법. 2.우선순위 큐 가장 경사가 적은값들만 찾아가면서 n,n이 나올때까지 탐색으로 찾아들어가는 방법 2.풀이 1.이진탐색 DFS로 그래프를 순회하며 (1,1)->(n,n)을 찾아간다. 지정한 경사보다 낮은 경사값들만 찾아 들어가다가 n,n에..
아이템43] 람다보다는 메서드 참조를 사용하라 람다의 장점은 익명클래스보다 코드가 간결해진다는 장점을 가진다. 하지만 여기서 메서드 참조(Method reference)를 활용하면 한단계 더 간결해진 코드를 만들 수 있다. 코드로 예시를 보자. Map에 키가 없다면 키와 숫자 1을 매핑하고, 키가 존재하면 기존 매핑값을 증가시키는 코드이다. map.merge(key, 1, (count, incr) -> count + incr); //Map에서 제공하는 merge 메서드 merge 메서드는 키,값,함수를 인자로 받는다. 깔끔해 보이지만 매개변수 count와 incr이 하는일 없이 코드를 차지한다. 자바 8에서는 Integer 클래스 및 기본타입 래퍼클래스은 이 람다와 기능이 같은 정적 메서드 sum 을 제..
아이템 42]익명클래스보다는 람다를 사용하라 자바 8에 와서 추상 메서드 하나짜리 인터페이스는 의미를 인정받아 간결하게 코드를 작성할 수 있게 해주는 방식이 도입되었다. 함수형 인터페이스라 부르는 인터페이스들의 인스턴스를 람다식(lambda expression,혹은 람다)을 사용해 만들 수 있게 된 것이다. 람다는 익명 클래스와 개념은 비슷하지만 코드는 훨씬 간결하고 자질구레한 코드들이 사라지고 어떤 동작을 하는지 명확하게 보인다는 장점을 가진다. 익명 클래스를 사용할 때와 람다를 사용했을 때의 코드를 비교해보자. 문자열을 길이순으로 정렬하는 코드이다. 1.익명 클래스의 인스턴스를 함수객체로 사용하는 방식 Collection.sort(words, new Comparator() { public int co..

Redis (Remote Dictionary Server)란? 보통 Remote에 있는 In-Memory Data Structure Store (인 메모리 데이터 구조)를 가진 key-value 구조 데이터 관리 시스템이다. 보통 DB는 하드 디스크나 SSD에 저장하여 디스크를 돌며 원하는 자료를 찾기 때문에 상대적으로 많은 시간이 소요된다.하지만 Redis는 메모리(RAM)에 데이터를 저장하기 때문에 용량은 적지만 디스크 스캐닝, 쿼리 없이 데이터를 빠르게 가져올 수 있다. Redis는 크게 String, Set ,Sorted Set, Hash,List 자료구조를 지원한다. 이러한 자료구조를 어플리케이션에 잘 맞춰 활용하면 좋은 성능을 낼 수 있다. Cache란? Cache는 나중에 요청올 결과를 미리..