이미 소장하고 있다면 판매해 보세요.
|
|
1장 알고리즘 워밍업
1.1 알고리즘이란 무엇인가 1.1.1 여러 가지 자료로 살펴보는 알고리즘의 의미 1.1.2 알고리즘을 만드는 비결 1.1.3 컴퓨터 알고리즘 1.2 이 책의 알고리즘 설명 방법 1.2.1 주요 요소 표기 방법 1.2.2 처리의 흐름 1.2.3 연산자 1.3 유클리드 호제법 1.3.1 유클리드 호제법 1.3.2 알고리즘의 추적 1.3.3 알고리즘 구현 확인 문제 2장 반복문과 배열의 기본 및 선형 검색 2.1 반복문과 배열의 기본 2.1.1 배열 요솟값의 합계를 구하는 알고리즘 2.1.2 알고리즘의 추적 2.1.3 프로그램을 이용한 알고리즘 추적 2.2 선형 검색 2.2.1 선형 검색 알고리즘 2.2.2 알고리즘의 추적 2.2.3 프로그램을 이용한 알고리즘의 추적 확인 문제 3장 이진 탐색과 시간 복잡도 3.1 이진 검색 3.1.1 이진 검색 알고리즘 3.1.2 알고리즘의 추적 3.1.3 프로그램을 이용한 알고리즘 추적 3.2 알고리즘의 시간 복잡도 3.2.1 선형 검색과 이진 검색의 시간 복잡도 3.2.2 검색 및 정렬 관련 주요 알고리즘의 시간 복잡도 3.2.3 데이터량과 시간 복잡도 확인 문제 4장 다중 반복문과 삽입, 버블, 선택 정렬 4.1 다중 반복문의 기초 4.1.1 구구단 알고리즘 4.1.2 알고리즘의 추적 4.1.3 프로그램을 이용한 알고리즘의 추적 4.2 삽입 정렬 4.2.1 삽입 정렬 알고리즘 4.2.2 알고리즘의 추적 4.2.3 프로그램을 이용한 알고리즘의 추적 4.3 버블 정렬 4.3.1 버블 정렬 알고리즘 4.3.2 프로그램을 이용한 알고리즘의 추적 4.4 선택 정렬 4.4.1 선택 정렬 알고리즘 4.4.2 프로그램을 이용한 알고리즘의 추적 확인 문제 5장 연결 리스트의 구조와 사용 5.1 연결 리스트의 구조 및 추적 5.1.1 일반 배열과 연결 리스트의 차이 5.1.2 연결 리스트의 장점 5.1.3 연결 리스트의 단점 5.2 연결 리스트를 움직이는 프로그램 5.2.1 연결 리스트를 만들어 요소를 표시하기 5.2.2 연결 리스트에 요소를 삽입하기 5.2.3 연결 리스트에서 요소를 삭제하기 확인 문제 6장 이진 탐색 트리의 추가와 탐색 6.1 이진 탐색 트리의 자료구조와 요소의 추가 6.1.1 이진 탐색 트리의 자료구조 6.1.2 요소를 추가하면서 이진 탐색 트리를 구성하는 알고리즘 6.1.3 알고리즘의 추적 6.2 이진 탐색 트리의 탐색 6.2.1 이진 탐색 트리의 깊이 우선 탐색 6.2.2 이진 탐색 트리에서 요소를 탐색하는 알고리즘 6.2.3 재귀 호출에 의한 이진 탐색 트리의 탐색 확인 문제 7장 해시 테이블 탐색법 7.1 해시 테이블 탐색법의 구조 7.1.1 해시 테이블 탐색법의 알고리즘 7.1.2 알고리즘의 추적 7.1.3 프로그램을 이용한 알고리즘의 추적 7.2 해시 충돌에 대처하는 방법 7.2.1 해시 충돌에 대응하기 위한 알고리즘 7.2.2 알고리즘의 추적 7.1.3 프로그램을 이용한 알고리즘의 추적 확인 문제 8장 재귀 호출과 퀵 정렬 8.1 재귀 호출 8.1.1 n의 계승을 구하는 알고리즘 8.1.2 알고리즘의 추적 8.1.3 프로그램을 이용한 알고리즘의 추적 8.2 퀵 정렬 8.2.1 퀵 정렬 알고리즘 8.2.2 알고리즘의 추적 8.2.3 프로그램을 이용한 알고리즘의 추적 확인 문제 9장 동적 계획법과 배낭 문제 9.1 동적 계획법 9.1.1 재귀 호출로 피보나치 수 구하기 9.1.2 동적 계획법으로 피보나치 수 구하기 9.1.3 재귀 호출과 동적 계획법을 조합하여 피보나치 수 구하기 9.2 배낭 문제 9.2.1 배낭 문제와 동적 계획법 9.2.2 동적 계획법으로 배낭 문제를 푸는 구조 9.2.3 동적 계획법으로 배낭 문제를 푸는 프로그램 확인 문제 10장 유전 알고리즘과 배낭 문제 10.1 유전 알고리즘으로 배낭 문제를 푸는 구조 10.1.1 유전 알고리즘의 단계 10.1.2 유전 알고리즘의 구조를 설명하는 프로그램 10.1.3 유전 알고리즘의 구조를 설명하는 프로그램의 의사코드 10.2 유전 알고리즘으로 배낭 문제를 푸는 프로그램 만들기 10.2.1 프로그램을 구성하는 필드의 역할 10.2.2 프로그램을 구성하는 함수(메소드)의 기능 10.2.3 전체 프로그램 확인 문제 부록 알고리즘 문제 해결로 실력 확인하기 힙의 성질을 이용한 데이터 정렬 프로그램 1 프로그램 2 정답과 해설 문자열 오류 검출 프로그램 설명 정답과 해설 Quiz와 확인 문제의 정답 |
아크몬드
|
취업이나 면접 멘토가 과외해주는 듯한 느낌으로 알고리즘 기초 체력을 기른다!
프로그래밍의 조건문이나 반복문을 처음 배우면서 내 생각에는 맞는 조건인 것 같은데 원하는 출력 결과가 나오지 않았던 기억이 있었습니다. 이때 선배가 '어디어디에 출력문을 넣고 결과 확인하면서 수정해봐'라는 조언을 들은 적이 있습니다. 이것이 디버깅의 원점이자 본질입니다. 그 당시 이 방법 하나로도 무작정 조건을 바꾸면서 시험하는 것보다 좀 더 빨리 원하는 결과에 맞는 조건을 찾았었습니다. 이 책은 방금 설명한 프로그래밍 기법을 ‘추적 코드'라고 명칭하고 알고리즘을 공부할 때 활용하려는 목적으로 썼습니다. 기존 알고리즘의 공식과도 같은 코드를 익히더라도 그걸 응용하는 방법을 익힐 때는 그림보다도 실제 프로그래밍 코드의 조건이 바뀌었을 때 어떤 과정으로 동작하는지 확인하는 것이 좋습니다. 이 책이 제시하는 개념 이해→코딩→계산 과정 추적으로 익히는 단계별 알고리즘 학습법과 함께 하면 조금은 딱딱하고 이해하기 어려운 알고리즘 익히기에 새로운 도움을 줄 것입니다. |