CS Study
이 저장소는 컴퓨터과학(Computer Science)의 핵심 개념들을 정리하고 체계적으로 기록한 자료 모음입니다.
알고리즘과 자료구조, 운영체제, 네트워크, 데이터베이스 등 전통적인 CS 분야 전반에 걸친 내용을 다룹니다.
주요 구성
이 저장소는 다음과 같은 주제들로 구성되어 있습니다:
1. 알고리즘 (algorithm/
)
- 정렬 알고리즘: 버블, 선택, 삽입, 병합, 퀵 등
- 탐색 알고리즘: 이진 탐색, 순차 탐색
- 그래프 알고리즘: DFS, BFS, 다익스트라, 유니온 파인드 등
- 동적 프로그래밍: 피보나치 수열, 배낭 문제 등
자세한 내용은 algorithm/ 디렉토리를 참고해 주세요.
2. 자료구조 (data-structure/
)
- 기본 자료구조: 배열, 리스트, 스택, 큐
- 고급 자료구조: 트리, 힙, 그래프, 해시 테이블 등
- 추상 자료형(ADT)과 그 구현 방식
자세한 내용은 data-structure/ 디렉토리를 참고해 주세요.
3. 운영체제 (os/
)
- 프로세스와 스레드의 개념
- 메모리 관리: 페이징, 세그멘테이션, 가상 메모리
- CPU 스케줄링, 인터럽트, 시스템 콜 등 핵심 개념
4. 컴퓨터 네트워크 (network/
)
- OSI 7계층, TCP/IP 구조
- HTTP, HTTPS, REST API 등 웹 통신의 핵심 요소
- IP, DNS, NAT, 방화벽 등의 기초 개념
5. 데이터베이스 (db/
)
- 관계형 데이터베이스의 기본 원리
- SQL 문법과 인덱스, 트랜잭션, 정규화
- NoSQL 개요 및 RDBMS와의 차이점
6. 시스템 설계 (system-design/
)
- 대규모 시스템의 구조적 설계 방식
- 캐싱, 로드 밸런싱, 메시지 큐 등 실전 개념
- 면접용 설계 질문에 대한 사고 방식 훈련
7. 프로그래밍 언어 (language/
)
- C#, Java를 중심으로 한 언어별 문법 정리
- 객체지향, 제네릭, 비동기 처리 등의 주요 개념
8. 기타 (etc/
)
- 시간 복잡도 정리표
- 기술 면접 질문과 팁
- 개인적인 학습 노트 및 참고 링크