일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- 우아한형제들
- 탐색알고리즘
- springboot
- SQL
- 알고리즘
- Database
- Backtracking
- 웹프로그래밍
- Vue.js
- Spring
- codeground
- react
- Vue
- BAEKJOON
- framework
- DFS
- 데이터베이스
- TypeScript
- Java
- 백준
- Algorithm
- 프레임워크
- BFS
- JavaScript
- BOJ
- mobx
- 우아한테크캠프
- Today
- Total
목록전체 글 (89)
설모의 기록
자바스크립트의 함수는 객체이기 때문에 프로퍼티를 가질 수 있습니다. 이 점을 이용해 함수에 프로퍼티를 추가해 결과 값을 캐시하고, 다음 호출 지점에 그 연산을 반복하지 않고 캐시된 프로퍼티의 값을 반환해주는 패턴을 메모이제이션 패턴이라고 합니다.예를 들어, 파라미터로 양의 정수값을 넣으면 1부터 파라미터 값까지의 합을 구하는 함수를 구현하려고 합니다. 위의 예제처럼 함수를 구현해도 되지만, 만약 addFunc (1) ~ addFunc(10000) 을 모두 구하고 싶다면 굉장히 많은 반복문을 돌아야 합니다. 이럴 떄 메모이제이션 패턴을 이용해 구현을 하면 반복문을 최소화할 수 있습니다. 위의 예제처럼 구현한다면, cache[number - 1] 에 값이 있을 때 그 값을 가져와 number 와 더해준 후 ..
스크립트 언어인 자바스크립트는 클래스 개념이 없습니다. 그러나 함수를 이용해 클래스처럼 구현할 수 있고, 객체를 생성할 수 있습니다. 자바스크립트에서의 함수의 특징은 일급객체라는 것과 유효범위를 생성한다는 것입니다. 우선 자바스크립트에서 함수는 일급객체입니다. 일급 객체란 다음의 목록이 모두 가능한 객체를 말합니다.변수나 데이터 구조 안에 담을 수 있다.인자로 전달할 수 있다.반환 값으로 사용할 수 있다.런타임에 생성할 수 있다.할당에 사용된 이름과 관계 없이 고유하게 식별할 수 있다. 자바스크립트에서는 자바와는 달리 for 문같은 반복문을 구현해도 그 안에서의 유효범위, 즉 스코프가 생성되지 않습니다. 이 말은 반복문 안에서 생성한 변수는 반복문 밖에서도 사용할 수 있다는 말입니다. 그러나 함수를 이용..
이 문제는 다익스트라 알고리즘의 대표 문제입니다. 다익스트라 알고리즘 개념에 대해서 잊어버려서 개념부터 다시 보고 온,,다익스트라 알고리즘은 가중치가 존재하는 그래프에서 정점과 정점사이의 최단거리를 구할 때 사용 되는 알고리즘 입니다. 처음엔 다익스트라 알고리즘 개념만 보고 온 상태로 문제를 풀었습니다. weight 를 int[nV + 1][nV + 1] 배열로 만들어 사용했더니 런타임 에러가 났습니다.왜그러나 했는데 이차원 배열일 경우에는 사용하지 않는 인덱스도 너무 많았습니다. 게다가 정점의 개수 nV 가 20,000 개라면, weight 배열에만 20,000 * 20,000 * 4 byte 가 필요하기 때문에 메모리 낭비입니다.알고리즘 문제를 풀 때 다익스트라 알고리즘은 우선순위 큐와 함께 사용하는..
저는 dfs 를 이용해 풀었습니다. 테스트 케이스를 포함해 모든 케이스가 맞는데도 불구하고 계속 틀려서 왜 그러나 했는데, 한 반복문 안에서 뿌요뿌요가 두번 터지면 count 변수는 한번만 증가시켜야 제대로 된 정답이 나옵니다. (예) 아래의 케이스의 경우, count 변수는 1 이 나와야 합니다.............................................................RRRYYYRRRYYY 푸는 방식- 뿌요뿌요 배열에서 내가 검사해야 할 가장 위쪽 X 인덱스가 몇인지 구한다. (minX)- while 문을 돌면서 '.' 이 아닌 char 를 찾는다.- 그 char 를 포함해 주변에 같은 문자들의 개수가 4를 넘으면 뿌요뿌요를 터뜨리고 flag 변수를 바꿔준다.- fla..
저는 dfs, bfs 를 이용하여 문제를 풀었습니다. 푸는 방식- dfs 를 이용해 이중루프를 돌려 섬마다 번호를 체크해줍니다.- bfs 를 이용해 큐에 들어있는 인덱스 주변으로 섬을 확장 시킵니다.- 가장 짧은 길이를 출력합니다. import java.io.*; import java.util.LinkedList; import java.util.Queue; import java.util.StringTokenizer; class Point { int x, y; Point (int x, int y) { this.x = x; this.y = y; } } public class Main { static int N, COUNT = 0, NUMBER = 0; static int[][] a, visit, bridge..