| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- 코딩테스트
- 분할정복
- 스터디
- LinkedList
- 우선순위 큐
- MSA
- 연결리스트
- 15552번
- 백준
- 퀵정렬
- 팀정렬
- 프로그래머스
- stack
- divide and conquer
- heap
- collections.sort
- 스택
- 이진트리탐색
- 큐
- 힙
- 자료구조
- 선택정렬
- 파싱
- Timsort
- 트라이
- 해시함수
- 거품정렬
- 코테
- 삽입정렬
- 코테준비
- Today
- Total
목록전체 글 (97)
kkarookara
위상 정렬정렬 알고리즘의 일종으로, 순서가 정해져 있는 일련의 작업을 차례대로 수행해야 할 때 사용할 수 있는 알고리즘사이클이 없는 방향 그래프의 모든 노드를 '방향성에 거스르지 않도록 순서대로 나열하는 것' 진입차수와 진출차수진입 차수 : 특정한 노드로 들어오는 간선의 개수진출 차수 : 특정한 노드에서 나가는 간선의 개수 위상 정렬 알고리즘 동작 과정진입차수가 0인 노드를 큐에 넣는다.큐가 빌 때까지 다음의 과정을 반복한다.① 큐에서 원소를 꺼내 해당 노드에서 나가는 간선을 그래프에서 제거② 새롭게 진입차수가 0이 된 노드를 큐에 삽입 위상 정렬의 특징사이클이 없는 방향 그래프(DAG)에 대해서만 수행할 수 있다. ※ DAG(Direct Acyclic Graph) : 순환하지 않는 방향 그래프위상 ..
- 1초 제한시간에서 일반적으로: * O(N): ~1억 * O(N²): ~1만 * O(N³): ~500 * O(N⁴): ~50 입력 크기로 판단N이 50 이하면:- O(N⁴)도 괜찮음- O(N³)은 거의 항상 가능- O(N²)은 매우 여유로움N이 1000 이하면:- O(N²)까지는 괜찮음- O(N³)은 위험N이 100,000 이하면:- O(N) 또는 O(NlogN) 정도만 가능 문제 유형으로 판단완전탐색이 필요해 보이고:- 입력크기가 매우 작으면(N≤50) → 브루트포스 가능성 높음- 특별한 제약조건이나 패턴이 없으면 → 브루트포스 가능성 높음 최단 경로- N ≤ 400: 플로이드-워셜 (O(N³))- N ≤ 20,000, E ≤ 300,000: 다익스트라 (O(ElogV))- 가중치가 1이거나..
Garbage Collection(GC) 이란?자바의 메모리 관리 방법 중 하나로 JVM (자바 가상 머신)의 Heap 영역에서 동적으로 할당했던 메모리 중 필요 없게 된 메모리 객체 (garbage)를 모아 주기적으로 제거 C / C++에는 GC 없어서 프로그래머가 수동으로 메모리 할당/해제 해줘야 함. Java는 가비지 컬레터가 메모리 관리 대행해주기 때문에 Java 프로세스가 한정된 메모리를 효율적으로 사용할 수 있도록 해줌개발자 입장에서 메모리 관리, 메모리 누수(Memory Leak) 문제에 대해 관리하지 않아도 됨(python, javascript, go 등에도 gc 내장됨) for (int i = 0; i 위의 코드에서 루프문에 의해 10000건의 객체 생성, but 루프가 끝나면 밖에..
DNS란?웹사이트에 접속할 때, 외우기 어려운 IP 주소 대신에 도메인 이름을 사용DNS : 도메인을 실제 네트워크상에서 사용하는 IP 주소로 바꾸고 해당 IP 주소로 접속하는 과정, 시스템 DNS는 전세계적으로 약속된 규칙을 공유 상위 기관에서 인증된 기관에게 도메인을 생성하거나 IP 주소로 변경할 수 있는 '권한'을 부여DNS는 이처럼 (상위 기관과 하위 기관)과 같은 '계층 구조'를 가지는 분산 데이터베이스 구조를 가진다. DNS 구성 요소 (3)1. 도메인 네임 스페이스(Domain Name Space)2. 네임 서버 (Name Server) = 권한 있는 DNS 서버3. 리졸버 (Resolver) = 권한 없는 DNS 서버 "이 도메인 이름은 이 IP 주소이다" 라는 '텍스트'를 저장하는 데이..
1장 웹 브라우저가 메시지를 만든다01 HTTP 리퀘스트 메시지를 작성한다.1. 탐험 여행은 URL 입력부터 시작한다.브라우저는 몇 개의 클라이언트 기능(웹, 메일 등)을 겸비한 복합적인 클라이언트 소프트웨어따라서, 어느 기능을 사용할 것인지 프로토콜을 통해 제시해주어야 함2. 브라우저는 먼저 URL을 해독한다.브라우저는 각 프로토콜의 형식에 따라 URL을 해독3. 파일명을 생략한 경우생략될 경우에 접근할 디폴트 파일을 서버에 미리 설정주로 index.html이나 default.html끝에 / 이 생략될 경우, 우선 이름이 같은 파일 탐색하고 없으면 폴더 탐색4. HTTP의 기본개념클라이언트와 서버가 주고받는 메시지의 내용과 순서를 정의요청 메시지(Request) : 무엇을 + 어떻게 해서무엇을 : ur..