서브메뉴

본문

쉽게 배우는 자료구조 with 파이썬
쉽게 배우는 자료구조 with 파이썬
저자 : 문병로
출판사 : 한빛아카데미
출판년 : 20220116
ISBN : 9791156645757

책소개


문제 해결 기법 훈련을 위한 가이드

이 책은 기본 자료구조와 알고리즘을 밀도 있게 풀어낸 기본서다. 기본 원리는 이해하기 쉽게 단계별로 차근차근 설명하면서도 구현을 위해 논리의 골격을 구성해가는 과정에서는 저자의 내공까지 충실하게 담았다. 자료구조라는 도구를 사용하는 방법에 대한 기본기를 탄탄히 다질 수 있을 뿐만 아니라 효율적이고 최적화된 코드를 통해 실력도 기를 수 있다.

※ 본 도서는 대학 강의용 교재로 개발되었으므로 연습문제 해답은 제공하지 않습니다.

목차


Chapter 01 자료구조 소개

01 자료구조란
02 자료구조와 알고리즘
03 자료구조의 추상 데이터 타입

Chapter 02 재귀(자기호출)와 귀납적 사고

01 자료구조와 재귀
02 재귀 구조 예
03 재귀와 수학적 귀납법
연습문제

Chapter 03 알고리즘의 성능

01 알고리즘 수행 시간이란
02 알고리즘 복잡도
1 O-표기
2 Ω-표기
3 Θ-표기
4 점근적 표기법의 수학적 정의
5 집합 표기를 대신하는 ‘=’
6 시각적 정리
연습문제

Chapter 04 파이썬 기초

01 파이썬 언어의 특징
02 파이썬 사용 기초
1 파이썬 코드의 수행
2 프린트
3 수의 처리
4 문자열
5 제어
6 불변 타입과 가변 타입
7 리스트, 튜플, 딕셔너리, 집합
8 복사호출, 참조호출, 할당호출
9 클래스
10 순회 가능 클래스
03 프로그램 수행
04 패키지와 모듈
05 파이썬 개발 환경

Chapter 05 리스트

01 리스트란
1 생활 속의 리스트
2 리스트의 작업
3 리스트의 구현
02 배열 리스트(파이썬 기본 제공)
1 리스트의 객체 구조
2 리스트의 작업
3 파이썬 내장 리스트의 한계
03 연결 리스트
1 연결 리스트의 객체 구조
2 연결 리스트의 작업
3 연결 리스트의 구현
04 배열 리스트와 연결 리스트의 비교
05 연결 리스트의 개선 및 확장
1 원형 연결 리스트
2 원형 연결 리스트 구현 및 연결 리스트 개선
3 양방향 연결 리스트
4 양방향 원형 연결 리스트의 구현
연습문제

Chapter 06 스택

01 스택이란
1 생활 속의 스택
2 스택의 개념과 원리
3 추상 데이터 타입 스택
02 리스트를 이용한 스택
1 리스트 스택의 객체 구조
2 리스트 스택의 작업과 구현
03 연결 리스트를 이용한 스택
1 연결 리스트 스택의 객체 구조
2 연결 리스트 스택의 작업과 구현
04 스택 응용
1 문자열 뒤집기
2 Postfix 계산
연습문제

Chapter 07 큐

01 큐란
1 생활 속의 큐
2 큐의 개념과 원리
3 추상 데이터 타입 큐
02 리스트를 이용한 큐
1 리스트 큐의 객체 구조
2 리스트 큐의 작업과 구현
03 연결 리스트를 이용한 큐
1 연결 리스트 큐의 객체 구조
2 연결 리스트 큐의 작업과 구현
04 큐 응용: 좌우동형 문자열 체크
연습문제

Chapter 08 우선순위 큐: 힙

01 힙이란
1 우선순위 큐와 힙
2 힙과 완전 이진 트리
3 힙의 조건
4 힙 객체의 구조
02 힙 작업 알고리즘과 구현
1 원소 삽입
2 원소 삭제
3 힙 생성
4 기타 작업
5 힙 구현 전체 코드
03 힙 수행 시간
연습문제

Chapter 09 정렬

01 정렬이란
02 기본 정렬 알고리즘
1 선택 정렬
2 버블 정렬
3 삽입 정렬
03 고급 정렬 알고리즘
1 병합 정렬
2 퀵 정렬
3 힙 정렬
4 셸 정렬
04 데이터 특성을 잘 이용하는 정렬 알고리즘
1 계수 정렬
2 기수 정렬
3 버킷 정렬
05 정렬 알고리즘 간 성능 비교
연습문제

Chapter 10 색인과 이진 검색 트리

01 색인
1 색인이란
2 레코드, 키와 색인의 관계
3 추상 데이터 타입 색인
02 이진 검색 트리
1 검색 트리
2 이진 검색 트리
3 노드 객체의 구조
03 이진 검색 트리 알고리즘과 구현
1 검색
2 삽입
3 삭제
4 이진 검색 트리의 성질
5 순회
6 이진 검색 트리의 구현
연습문제

Chapter 11 균형 검색 트리

01 균형 검색 트리란
02 AVL 트리
1 AVL 트리란
2 노드 객체의 구조
3 균형이 깨진 AVL 트리의 수선
4 AVL 트리의 구현
03 레드-블랙 트리
1 레드-블랙 트리란
2 레드- 블랙 트리의 수선
04 B-트리
1 B-트리란
2 B-트리 알고리즘
3 B-트리의 작업 성능
연습문제

Chapter 12 해시 테이블

01 해시 테이블
1 해시 테이블이란
2 해시 테이블의 객체 구조
02 해시 함수
1 나누기 방법
2 곱하기 방법
03 충돌 해결
1 체이닝
2 개방 주소 방법
3 검색 시간
연습문제

Chapter 13 그래프

01 그래프란
02 그래프의 표현
1 인접 행렬
2 인접 리스트
3 인접 배열
4 인접 해시 테이블
03 너비 우선 탐색과 깊이 우선 탐색
1 BFS
2 DFS
04 최소 신장 트리
1 프림 알고리즘
2 크루스칼 알고리즘
3 안전성 정리
05 위상 정렬
06 최단 경로
1 다익스트라 알고리즘(음의 가중치를 허용하지 않는 경우)
2 벨만-포드 알고리즘(음의 가중치를 허용하는 경우)
연습문제

찾아보기

QuickMenu