close
더북(TheBook)
search
파이썬으로 배우는 자료 구조 핵심 원리
더북(TheBook)
home
Home
1장 재귀 함수
1.1 재귀 함수: 자신을 호출하는 신기한 함수
1.1.1 재귀 함수로 팩토리얼 구현하기
1.1.2 스택 프레임으로 재귀 함수 이해하기
1.1.3 순열을 재귀 함수로 구현하기: 재귀 트리 사용하기
2장 성능 분석
2.1 자료 구조 성능 이야기: 빅오
2.1.1 알고리즘 성능 분석
2.1.2 성능을 비교하는 방법: 빅오
2.1.3 방심은 금물!: 빅오의 함정
2.2 추상 데이터 타입이란
3장 배열: 변수가 한곳에 모여 있으면 빠르다!
3.1 동적 배열이란
3.2 지역성의 원리와 캐시
3.3 인덱싱: 데이터에 빠르게 접근한다!
3.4 동적 배열에서 데이터의 삽입과 삭제 1
3.5 동적 배열에서 데이터의 삽입과 삭제 2
4장 연결 리스트: 삽입과 삭제를 빠르게 할 수 없을까?
4.1 연결 리스트 이해하기
4.2 동적 배열과 연결 리스트
4.3 더미 이중 연결 리스트
5장 스택과 큐, 그리고 덱
5.1 스택: 데이터를 차곡차곡 쌓는다
5.1.1 스택 구현: 동적 배열을 이용하여 구현하기
5.2 큐: 데이터로 줄 세우기
5.2.1 큐 구현 1: 동적 배열을 단순하게 사용해서 구현하기
5.2.2 큐 구현 2: 원형 큐로 구현하기
5.3 덱: 스택으로도 큐로도 사용할 수 있는 덱
6장 그래프: 관련 있는 데이터 연결하기
6.1 그래프 용어 정리
6.2 그래프를 표현하는 두 가지 방법: 도시와 도시를 이어 보자
6.3 그래프의 모든 노드 방문: 모든 도시를 여행해 보자
6.3.1 너비 우선 탐색: 인근 도시부터 여행하기
6.3.2 깊이 우선 탐색: 한 방향으로 쭉 따라 여행하기
7장 트리: 정말 쓸 데가 많은 자료 구조
7.1 트리 용어 정리
7.2 이진 트리의 순회: 모든 노드 방문하기
7.2.1 전위 순회
7.2.2 중위 순회
7.2.3 후위 순회
7.2.4 레벨 순서 순회
8장 다양한 트리 1: 이진 탐색 트리
8.1 이진 탐색 알고리즘
8.2 딕셔너리의 내부 구현
8.3 이진 탐색 트리
8.4 이진 탐색 트리의 구현
8.5 이진 탐색 트리의 단점
9장 다양한 트리 2: 레드 블랙 트리
9.1 어떻게 균형을 맞출 것인가?
9.2 레드 블랙 트리
9.3 레드 블랙 트리의 구현
10장 다양한 트리 3: B 트리
10.1 메모리 계층 구조
10.2 데이터베이스에 데이터 삽입, 탐색, 삭제해 보기
10.3 B 트리
10.4 B 트리에 키 삽입·삭제하기
10.5 B+ 트리
10.6 B 트리로 인덱스 만들기
11장 다양한 트리 4: 힙과 우선순위 큐
11.1 힙
11.2 우선순위 큐
12장 다양한 그래프 알고리즘 1: 위상 정렬
12.1 위상 정렬
13장 다양한 그래프 알고리즘 2: 최소 비용 신장 트리
13.1 탐욕 알고리즘
13.2 크루스칼 알고리즘
13.2.1 그래프의 표현
13.2.2 분리 집합: 사이클이 형성되는지 어떻게 확인하지?
13.2.3 크루스칼 알고리즘 구현
13.3 프림 알고리즘
13.3.1 가중치가 가장 작은 에지를 찾는 방법
13.3.2 프림 알고리즘 구현
14장 다양한 그래프 알고리즘 3: 최단 경로
14.1 데이크스트라 알고리즘
14.2 BFS와 프림 알고리즘, 그리고 데이크스트라 알고리즘
15장 자료 구조가 적용된 실제 사례
15.1 생산자 -소비자 패턴: 큐
15.2 자바스크립트 엔진: 스택과 큐
8장
다양한 트리 1: 이진 탐색 트리
8.1
이진 탐색 알고리즘
8.2
딕셔너리의 내부 구현
8.3
이진 탐색 트리
8.4
이진 탐색 트리의 구현
8.5
이진 탐색 트리의 단점
Prev
BUY
Next
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.
Email address