일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- dbms
- python
- 생성자
- spring
- 코테
- Stack
- DB
- 코딩테스트
- 자바의정석
- 가상컴퓨팅
- cloud computing
- data structure
- Queue
- Algorithm
- MVC
- 알고리즘
- Java
- JPA
- 공개키 암호화
- JDBC
- 클라우드 컴퓨팅
- jsp
- 크루스칼
- sql
- BFS
- 자료구조
- javascript
- dfs
- generic class
- 암호학
- Today
- Total
목록코테 (2)
PLOD
동적계획법컴퓨터는 굉장히 빠른 연산 속도를 장점으로 갖고 있기 때문에 인간이 풀기엔 오래걸리는 문제라도 컴퓨터로는 금방 답을 얻을 수 있다. 이 특징이 가장 두드러지는 방법이 완전탐색이다. 완전탐색은 범위가 작을 때는 시간,공간적으로는 괜찮았지만 범위가 10000000000 이상이라면 코딩테스트에서 시간 , 메모리 초과가 발생한다. 그래서 더 효율적인 알고리즘을 사용해서 풀어야 하는데 그 방법은 동적 계획법이다.예를 들면 , 6번째 피보나치 수를 구하려면 5번째와 4번째가 필요하다 5번째를 구하기 위해서는 4번째와 3번째가 필요하고... 이렇게 계속 반복하다 보면 0번째와 1번째 까지 오게 된다 . 이를 가지고 2번째 피보나치 수를 구할 수 있고 연쇄적으로 6번째 피보나치 수를 구할 수 있다. 피보나치..
자료구조란? - 일련의 동일한 타입의 데이터를 정돈하여 저장한 구성체를 의미 - 프로그램에서 사용할 많은 데이터를 메모리 상에서 관리하는 여러가지 구현방법들 - 효율적인 자료구조가 성능 좋은 알고리즘의 기반이 됨 - 자료의 효율적인 관리는 프로그램의 수행속도와 밀접한 관련이 있음 - 데이터 정돈 목적은 프로그램에서 저장하는 데이터에 대해 탐색 , 삽입 , 삭제 등의 연산을 효율적으로 수행하기 위해서 이다. 알고리즘이란? - 문제를 해결하는 방법을 순서대로 명확하게 기술한 것 - 알고리즘의 각 단계는 정확히 한가지 의미로 해석되어야 한다.(명확성) - 알고리즘의 모든 유효한 입력에 대해 올바른 해를 출력해야 한다.(정확성) - 유효한 입력이 주어지면 반드시 유한한 시간 내에 종료되어야 한다.(정지성) - ..