반응형

분류 전체보기 160

백트래킹 - 백준 10597 (22.6.14)

사용자가 특정 차트를 고르면, 전 종목의 과거(10년) 차트들을 모두 탐색하여 가장 유사한 차트 10개를 골라 사용자에게 보여줍니다. 웹프로젝트 링크 비슷한 차트 검색기 전 종목의 최근 10년간 모든 차트를 탐색합니다. 내 종목의 차트는 과연 상승하는 차트일까요? www.similarchart.com 백트래킹이란 백트래킹(backtracking)이란 해를 찾는 도중 해가 아니어서 막히면, 되돌아가서 다시 해를 찾아가는 기법을 말한다. 해를 찾아가는 도중, 지금의 경로가 해가 될 것 같지 않으면 그 경로를 더 이상 가지 않고 되돌아간다. 즉 답이 될 만한지 판단하고 그렇지 않으면 그 부분까지 탐색하는 것을 하지 않고 가지치기하는 것을 백트래킹이라고 생각하면 된다. 깊이 우선 탐색(DFS) 과 백트래킹 DF..

알고리즘 2024.02.13

데이터베이스 개요 (22.6.13)

사용자가 특정 차트를 고르면, 전 종목의 과거(10년) 차트들을 모두 탐색하여 가장 유사한 차트 10개를 골라 사용자에게 보여줍니다. 웹프로젝트 링크 비슷한 차트 검색기 전 종목의 최근 10년간 모든 차트를 탐색합니다. 내 종목의 차트는 과연 상승하는 차트일까요? www.similarchart.com 데이터베이스 알아보기 데이터베이스(Database) : 데이터의 집합 데이터베이스 관리 시스템(Database Management System): 데이터베이스를 운영/관리하는 프로그램. SQL(Structured Query Language) : 데이터베이스를 구축, 관리하고 활용하기 위해서 사용되는 언어 관계형 데이터베이스 관리 시스템(Relational DBMS) : 테이블이라는 최소 단위로 구성된 DBM..

데이터베이스 2024.02.13

스택 - 백준 17298 (22.6.10)

사용자가 특정 차트를 고르면, 전 종목의 과거(10년) 차트들을 모두 탐색하여 가장 유사한 차트 10개를 골라 사용자에게 보여줍니다. 웹프로젝트 링크 비슷한 차트 검색기 전 종목의 최근 10년간 모든 차트를 탐색합니다. 내 종목의 차트는 과연 상승하는 차트일까요? www.similarchart.com 스택이란 스택은 가장 나중에 들어온 자료가 가장 먼저 처리되는 LIFO(Last-In-First-Out) 자료구조이다. 백준 17298번 문제는 스택을 이용하여 풀 수 있다. 스택의 생성, 삽입, 삭제, 조회, 응용 등을 알아보자. n = int(input()) seq = list(map(int, input().split())) stk = [] # 스택 생성 ans = [-1] * n for i in ran..

자료구조 2024.02.13

우선순위 큐와 힙 - 백준2696, 골드달성 (22.6.9)

사용자가 특정 차트를 고르면, 전 종목의 과거(10년) 차트들을 모두 탐색하여 가장 유사한 차트 10개를 골라 사용자에게 보여줍니다. 웹프로젝트 링크 비슷한 차트 검색기 전 종목의 최근 10년간 모든 차트를 탐색합니다. 내 종목의 차트는 과연 상승하는 차트일까요? www.similarchart.com 우선순위 큐? 큐(Queue)는 먼저 들어오는 데이터가 먼저 나가는 FIFO(First In First Out) 형식의 자료구조이다. 우선순위 큐(Priority Queue)는 먼저 들어오는 데이터가 아니라, 우선순위가 높은 데이터가 먼저 나가는 형태의 자료구조이다. 우선순위 큐는 일반적으로 힙(Heap)을 이용하여 구현한다. 힙? 힙(Heap)은 우선순위 큐를 위해 고안된 완전이진트리 형태의 자료구조이다...

자료구조 2024.02.13

누적합 알고리즘 - 백준 1018 (22.6.7)

사용자가 특정 차트를 고르면, 전 종목의 과거(10년) 차트들을 모두 탐색하여 가장 유사한 차트 10개를 골라 사용자에게 보여줍니다. 웹프로젝트 링크 비슷한 차트 검색기 전 종목의 최근 10년간 모든 차트를 탐색합니다. 내 종목의 차트는 과연 상승하는 차트일까요? www.similarchart.com 백준 1018번 문제 지민이는 자신의 저택에서 MN개의 단위 정사각형으로 나누어져 있는 M×N 크기의 보드를 찾았다. 어떤 정사각형은 검은색으로 칠해져 있고, 나머지는 흰색으로 칠해져 있다. 지민이는 이 보드를 잘라서 8 ×8 크기의 체스판으로 만들려고 한다. 체스판은 검은색과 흰색이 번갈아서 칠해져 있어야 한다. 구체적으로, 각 칸이 검은색과 흰색 중 하나로 색칠되어 있고, 변을 공유하는 두 개의 사각형은..

알고리즘 2024.02.13

파라메트릭 서치 (Parametric Search) 22.6.6

사용자가 특정 차트를 고르면, 전 종목의 과거(10년) 차트들을 모두 탐색하여 가장 유사한 차트 10개를 골라 사용자에게 보여줍니다. 웹프로젝트 링크 비슷한 차트 검색기 전 종목의 최근 10년간 모든 차트를 탐색합니다. 내 종목의 차트는 과연 상승하는 차트일까요? www.similarchart.com 파라메트릭 서치란 최적화 문제(문제의 상황을 만족하는 특정 변수의 최솟값, 최댓값을 구하는 문제)를 결정 문제로 바꾸어 푸는 것 최적화 문제 : 상황을 만족하는 변수의 최솟값, 최댓값을 구하는 문제 결정 문제 : Yes, No 중 하나로 답할 수 있는 문제 문제를 풀어나가는 과정이 바이너리 서치(이분 탐색)와 매우 흡사하다. 파라메트릭 서치는 의외의 문제들에 적용돼서 최적화 문제들을 조금 더 쉽게 풀 수 있..

알고리즘 2024.02.13

.gitignore (22.6.5)

사용자가 특정 차트를 고르면, 전 종목의 과거(10년) 차트들을 모두 탐색하여 가장 유사한 차트 10개를 골라 사용자에게 보여줍니다. 웹프로젝트 링크 비슷한 차트 검색기 전 종목의 최근 10년간 모든 차트를 탐색합니다. 내 종목의 차트는 과연 상승하는 차트일까요? www.similarchart.com .gitignore 이란? 하나씩 git repository 에 넣는 것은 매우 귀찮다. 그래서 보통 우리는 git add. 를 이용해 변경된 전체 파일을 추가하고 커밋한다. 하지만 보안상으로 위험성이 있는 파일 프로젝트와 관계없는 파일 용량이 너무 커서 제외해야되는 파일 등등이 생겨 git add 에 포함시키기 싫은 경우가 있다. 물론 이 경우 git rm 를 통해 일부 파일만 제외시키면 되지만, 모든 커..

깃허브 2024.02.13

어노테이션, 스프링의 시작 (22.6.4)

사용자가 특정 차트를 고르면, 전 종목의 과거(10년) 차트들을 모두 탐색하여 가장 유사한 차트 10개를 골라 사용자에게 보여줍니다. 웹프로젝트 링크 비슷한 차트 검색기 전 종목의 최근 10년간 모든 차트를 탐색합니다. 내 종목의 차트는 과연 상승하는 차트일까요? www.similarchart.com 어노테이션 코드를 보다 보면 @Override처럼 @가 붙은 걸 볼 수 있는데 자바 @의 의미는? 어노테이션(annotation)이라고 한다. 기존 자바 웹애플리케이션은 프로그램의 전체 및 각 레이어별 구성과 설정값들을 외부의 XML 설정파일에 명시하는 선언적인 프로그래밍 방식을 사용한다. 이것의 장점은 변경사항을 코드가 아닌 외부설정 파일에 분리하기 때문에 쉽게 컴파일 없이 적용할 수 있다. 단점은 프로그..

스프링 2024.02.13

동적 계획법, 백준 1463 (22.6.3)

사용자가 특정 차트를 고르면, 전 종목의 과거(10년) 차트들을 모두 탐색하여 가장 유사한 차트 10개를 골라 사용자에게 보여줍니다. 웹프로젝트 링크 비슷한 차트 검색기 전 종목의 최근 10년간 모든 차트를 탐색합니다. 내 종목의 차트는 과연 상승하는 차트일까요? www.similarchart.com 첫 기록 백준 1463번을 푸는데 처음에는 동적 계획법을 모르고 시작했다. 2 1 3 1 4 3 1 / 4 2 1 5 4 3 1 6 2 1 7 6 2 1 8 7 6 2 1 / 8 4 2 1 9 3 1 10 9 3 1 11 10 9 3 1 12 4 3 1 13 12 4 3 1 14 13 12 4 3 1 / 14 7 6 2 1 15 5 4 3 1 16 15 5 4 3 1 / 16 8 4 2 1 34 17 16 ..

알고리즘 2024.02.13

기록의 시작(22.6.3)

첫걸음 이후를 돌아보며 군대에서 복무하던 올해 초, 문득 미래를 준비해야겠다는 생각이 들었던 것 같다. 원래 나는 나름 코딩을 좋아하여 입대하기 전에 모바일 게임도 만들어보곤 했지만, 진지하게 내 미래에 관해 고민해 보고 생각해 본 적이 없었다. 그래서 취업에 관해 알아보려고 이것저것 검색을 해봤다. '개발자 취업', 'it학과 진로', '컴퓨터학과 공부법'부터 시작하여 백엔드, 프런트엔드, 데이터 엔지니어 등 여러 길이 있다는 것도 알게 되었다. 일주일 이상 검색과 고민을 반복한 끝에 백엔드 개발자가 나에게 맞다는 생각이 들었다. 또한, 백엔드 개발을 위한 로드맵, 공부법을 알아보니 컴퓨터로 공부해야하는 내용들이 대부분이었다. 하지만 군대에서는 컴퓨터를 사용하기가 어려웠다. 대신에 책을 읽을 수 있는 ..

잡담 2024.02.13
반응형