일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 완전탐색
- 분할정복
- 코틀린
- 이분탐색
- 알고리즘
- 안드로이드
- 생명주기
- 스택
- 트리
- 문자열다루기
- 코딩테스트
- 운영체제
- 동적계획법
- GIT
- 다이나믹프로그래밍
- 자바
- 백준
- 프로그래머스
- dfs
- 세그먼트트리
- BOJ
- 배열
- component
- BFS
- Android
- 문자열
- 코딩
- 카카오블라인드
- 그래프
- activity
- Today
- Total
목록전체 글 (89)
HS_development_log
문제 https://www.acmicpc.net/problem/2357 2357번: 최솟값과 최댓값 N(1 ≤ N ≤ 100,000)개의 정수들이 있을 때, a번째 정수부터 b번째 정수까지 중에서 제일 작은 정수, 또는 제일 큰 정수를 찾는 것은 어려운 일이 아니다. 하지만 이와 같은 a, b의 쌍이 M(1 ≤ M ≤ 100,000)개 주어졌을 때는 어려운 문제가 된다. 이 문제를 해결해 보자. 여기서 a번째라는 것은 입력되는 순서로 a번째라는 이야기이다. 예를 들어 a=1, b=3이라면 입력된 순서대로 1번, 2번, 3번 정수 중에서 최소, 최댓값을 www.acmicpc.net 세그먼트 트리에 대한 이론을 공부하고 실전 문제에 적용하기위해 풀어본 문제. 문제 정답률이 약 48%로 세그먼트 트리에 대한 ..
Git의 버전 관리 방법 1. Git과 다른 버전관리프로그램의 차이점 · CVS, Subversion, Perforce 등 시스템은 각 파일의 변화를 시간순으로 관리하면서 파일들의 집합을 관리 · 그러나 Git은 성능을 위해 이전상태의 파일에 대한 링크만저장, 데이터를 스냅샷의 스트림처럼 취급 ※스냅샷이란? 과거에 한 때에 존재하고 유지시킨 컴퓨터파일과 디렉터리의 모임. 쉽게말해 잘못 지워지거나 날라간 파일을 복구할수 있는 기능 · 시간순으로 프로젝트의 스냅샷을 저장한다. 2. Git은 거의 모든 명령을 로컬에서 실행 한다! · 모든 명령이 로컬 파일과 데이터만 사용하기 때문에 네트워크에 다른 컴퓨터는 필요없음 · 프로젝트의 모든 히스토리가 로컬 디스크에 있기때문에 모든 명령이 순식간에 실행됨 · 오프라..
Git의 근본적이해와 버전관리 및 Git 사용실력 향상을 위한 정리글입니다. 버전관리란? 파일의 변화를 시간에 따라 기록했다가 나중에 특정 시점의 버전을 다시 꺼내올 수 있는 시스템 버전관리의 종류 1. 로컬 버전 관리 · Patch Set(파일에서 변경되는 부분)을 관리. · Patch Set을 특별한 형식의 파일로 저장 · 일련의 Patch Set을 적용해서 모든 파일을 특정 시점으로 되돌림 2. 중앙집중식 버전 관리(CVCS) · 파일을 관리하는 서버가 별도로 존재 · 클라이언트가 중앙 서버에서 파일을 받아서 사용 2-1) CVCS의 장점 · 누가 무엇을 하고 있는지 알수있음 · 관리자는 누가 무엇을 할지 꼼꼼하게 관리가능 · 모든 클라이언트의 로컬 데이터베이스 관리보다 VCS 하나를 관리하는게 쉬..
자바를 이용한 세그먼트 트리의 기본구조입니다. 이진트리 구조로 구현되었습니다. 구간합을 예시로 들어서 구현했습니다. 세그먼트 트리 초기화 예를 들어 [ 1 , 2 , 3 , 4 , 5 , 6 ] 의 배열을 원소로갖는 세그먼트 트리의 모습은 아래 그림처럼 나와야합니다. 아래 코드로 이러한 모습이 구현이 가능합니다. public int init(int start, int end, int node) { if(start == end) { /* 리프노드이거나 자식노드들이 구간합이 모두구해졌을 경우 */ return tree[node] = arr[start]; /* 구간합 트리에 넣어준다 */ } /* 반씩 나눠서 재귀적으로 자식노드들의 구간합을 구해준다 */ int mid = (start+end)/2; retur..