확장메뉴
주요메뉴


소득공제
미리보기 공유하기
프로그래머의 취업, 이직을 결정하는

알고리즘 문제 풀이 전략

[ 2쇄 ]
리뷰 총점8.0 리뷰 18건 | 판매지수 240
베스트
IT 모바일 top20 4주
정가
34,000
판매가
30,600 (10% 할인)
YES포인트
8월 얼리리더 주목신간 : 귀여운 방해꾼 배지 증정
월간 개발자 2022년 8월호
박해선 저자의 머신러닝/딥러닝 패스
[단독]『혼자 공부하는 파이썬』 개정판 출간
내일은 개발자! 코딩테스트 대비 도서전
[단독] 에듀윌 IT 자격증 기획전 - 가장 빠른 합격출구 EXIT
2022 하반기 공채 이벤트
YES24 트윈링 분철 : 인서트라벨/스티커 택1 증정
8월 전사
쇼핑혜택
1 2 3 4 5

품목정보

품목정보
출간일 2016년 06월 01일
쪽수, 무게, 크기 724쪽 | 1274g | 183*235*28mm
ISBN13 9788968482700
ISBN10 8968482705

이 상품의 태그

책소개 책소개 보이기/감추기

취업, 승진, 대회 준비 등에 대비해 프로그래머의 역량을 키우는 데 필요한 알고리즘 문제 풀이 전략을 알려준다. 1부에서는 프로그래머가 꼭 알아야 할 주요 알고리즘 이론을 그림과 코드로 함께 분석하면서 알고리즘의 개념을 익힌다. 2부에서는 국내외에서 많이 소개된 알고리즘 문제를 제시한 후, 문제 분석 브레인 스토밍, 정답 코드 제시, 코드 해설을 통해서 알고리즘 문제를 해결하는 데 꼭 필요한 내용을 소개한다. 실력 향상에 고민하는 프로그래머는 물론, 현재 IT 실무 현장에서 일하는 프로그래머라면 이 책을 통해서 앞으로 프로그래머로 살아가는 데 필요한 기초 체력을 다질 수 있다.

목차 목차 보이기/감추기

Part I. 꼭 알아야 하는 필수 알고리즘

CHAPTER 1 알고리즘의 역할
__01 알고리즘의 정의
____알고리즘의 조건
__02 알고리즘을 왜 평가해야 하는가?
____알고리즘을 평가해야 하는 이유
____알고리즘 평가의 세 가지 요소
__03 수학적 배경
____알고리즘의 수학적 표기 방법
____빅오 표기법의 종류
____반복문의 시그마 연산 표현
__04 분석의 대상
____무엇을 분석할 것인가?
____반복문은 최대 반복 횟수로 계산한다
____중첩된 반목문은 중첩문 각각의 최대 반복 횟수를 곱해서 계산한다
____반복문이 떨어져서 2개 이상 있는 경우는 그중 가장 큰 값으로 계산한다
____if-else문은 알고리즘 성능에 영향을 미치지 않는다
____재귀 호출은 풀어서 계산한다
__05 알고리즘의 분석과 최적화
____프로그램의 수학적 분석 예
____프로그램의 최적화 예
__06 정리

CHAPTER 2 알고리즘을 배우기 전에 알아야 할 다섯 가지
__01 메모리와 주소의 관계
__02 자료형과 배열
____메모리와 자료형
____메모리와 배열
__03 배열의 응용
____함수와 일차원 배열의 사용
____다차원 배열
__04 포인터
____포인터는 왜 사용할까?
____포인터의 사용 형식
__05 배열과 포인터의 사용
____배열과 포인터의 기본적인 조합 방법
____배열과 포인터의 차이점
____배열을 사용하는 포인터를 함수의 매개변수로 사용
__06 포인터 배열과 포인터 연산
____포인터 배열이란?
____포인터 연산의 이해
__07 포인터의 활용: Call by reference
__08 정리

CHAPTER 3 기본적인 자료구조
__01 링크드 리스트란?
__02 단일 링크드 리스트의 삽입과 삭제
____단일 링크드 리스트의 특징
____단일 링크드 리스트의 삽입 알고리즘
____단일 링크드 리스트의 삭제 알고리즘
__03 이중 링크드 리스트
____이중 링크드 리스트
____이중 링크드 리스트의 삽입과 삭제 알고리즘
__04 스택의 개념과 알고리즘
____스택의 개념
____스택의 구현
____푸시와 팝
__05 큐의 개념과 알고리즘
____큐의 개념
____배열을 사용한 큐의 구현
____링크드 리스트를 사용한 큐의 구현
__06 정리

CHAPTER 4 트리
__01 트리의 개념과 주요 용어
____트리의 개념
____트리 관련 주요 용어
____이진 트리
____트리의 순회 알고리즘
__02 전위 순회 알고리즘
__03 중위 순회 알고리즘
____재귀 호출을 사용한 중위 순회
____스택을 사용한 중위 순회
__04 후위 순회 알고리즘
____재귀 호출을 사용한 후위 순회
____스택을 사용한 후위 순회
____스택을 사용하는 순회 알고리즘의 비교
__05 단계 순회 알고리즘
__06 정리

CHAPTER 5 트리의 응용
__01 AVL 트리
____이진 트리의 문제점
____AVL 트리
____AVL 트리의 구성
__02 2-3 트리
____AVL 트리의 문제점을 해결하는 2-3 트리
____2-3 트리의 구현
____2-3 트리의 변형
__03 정리

CHAPTER 6 기본 정렬 알고리즘
__01 다양한 정렬 알고리즘
__02 선택 정렬 알고리즘
____선택 정렬 알고리즘의 개념
____선택 정렬 알고리즘의 분석
__03 삽입 정렬 알고리즘
____삽입 정렬 알고리즘의 개념
____삽입 정렬 알고리즘의 분석
__04 버블 정렬 알고리즘
____버블 정렬 알고리즘의 개념
____버블 정렬 알고리즘의 분석
__05 셸 정렬 알고리즘
____셸 정렬 알고리즘의 개념
____셸 정렬 알고리즘의 분석
06 정리

CHAPTER 7 향상된 정렬 알고리즘
__01 퀵 정렬 알고리즘
____퀵 정렬 알고리즘의 개념
____퀵 정렬 알고리즘의 분석
__02 기수 정렬 알고리즘
____기수 정렬 알고리즘의 개념
____기수 정렬 알고리즘의 분석
__03 병합 정렬 알고리즘
____병합 정렬 알고리즘의 개념
____병합 정렬 알고리즘의 분석
__04 힙 정렬 알고리즘
____힙 정렬 알고리즘의 개념
____힙 정렬 알고리즘의 분석
__05 정리

CHAPTER 8 이진 검색 알고리즘
__01 이진 검색 알고리즘
____이진 검색 알고리즘의 개념
__02 이진 검색 트리 알고리즘
____이진 검색 트리 알고리즘의 특성
____이진 검색 트리 알고리즘의 데이터 삽입
____이진 검색 트리 알고리즘의 데이터 삭제
__03 정리

CHAPTER 9 해시 알고리즘
__01 해시 알고리즘
____키-주소 검색 알고리즘
____키-매핑 검색 알고리즘
__02 해시 알고리즘의 문제점
____해시 알고리즘의 데이터 중복 문제
__03 해시 알고리즘의 문제 해결 방법
____해시 알고리즘에서 발생되는 문제들
__04 정리

Part II. 실전 알고리즘 문제 해결

CHAPTER 10 몸풀기 알고리즘 문제
__01 10진수와 16진수 변환 프로그램
__02 숫자 맞추기
____임의의 숫자를 생성하는 방법
____프로그램이 계속 실행되도록 하는 방법
__03 최대공약수 구하기
____임의의 숫자의 약수를 구하는 방법
____임의의 두 숫자에 공통으로 해당하는 약수를 구하는 방법
____임의의 두 숫자에 공통으로 해당하는 약수 중 최댓값을 선택하는 방법
__04 피보나치 수열
__05 임의의 숫자 배수의 개수와 합 구하기
__06 소수 구하기
____소수를 구하는 기능
____한 행에 값 8개씩 맞춰 출력하는 기능
__07 지그재그 숫자 출력하기
____전체 총 몇 행을 출력하는지 결정하는 for문
____출력할 행이 홀수인 경우의 for문
____출력할 행이 짝수인 경우의 for문
__08 재귀 호출로 최대공약수 구하기
____첫 번째 재귀 호출: x = 4, y = 6
____두 번째 재귀 호출: x = 6, y = 4
____세 번째 재귀 호출: x = 4, y = 2
____네 번째 재귀 호출: x = 2, y = 0
____최종 결과
__09 정리

CHAPTER 11 기본기를 다지는 알고리즘 문제
__01 탐욕 알고리즘
__02 세포의 자기 증식 프로젝트
__03 재난 관리 프로젝트
__04 블록 쌓기 게임

CHAPTER 12 수학식을 이용하는 알고리즘 I
__01 분할 정복 알고리즘의 특징
__02 하노이의 탑
__03 기약 분수 구하기
__04 동전 옮기기
__05 숫자 순환

CHAPTER 13 수학식을 이용하는 알고리즘 II
__01 탐욕 알고리즘의 특징
__02 앞뒤가 같은 제곱
__03 연 소수
__04 최대 연속 부분합
__05 화물차 배치
__06 대칭 행렬 구하기

CHAPTER 14 동적 계획법의 기본 개념
__01 동적 계획법의 특징
__02 계단 오르기 게임
__03 타일 바르기
__04 목장 울타리 만들기
__05 한빛스키장 리프트 가격
__06 포인트 스키 활강

CHAPTER 15 동적 계획법 응용
__01 동적 계획법의 전형적인 문제
__02 한빛 패스트푸드
__03 시장의 도시 방문기
__04 신입 사원 선발
__05 해커의 도전
__06 배낭 여행

CHAPTER 16 맵을 이용하는 알고리즘
__01 백 트래킹 알고리즘의 개념
__02 생화학 폭탄
__03 아파트 단지
__04 피곤한 배달부
__05 체스
__06 배수로 공사

CHAPTER 17 출제 빈도가 높은 알고리즘 문제
__01 세뱃돈 만들기
__02 한빛캐피탈의 스타트업 투자
__03 외양간 고치기
__04 영역의 크기
__05 식인종과 연구원

부록 Visual Studio 2013의 설치 및 설정 방법
__01 Visual Studio 2013의 다운로드와 설치
____Visual Studio 웹사이트
____Visual Studio 2013의 설치
____Visual Studio 2013의 실행
__02 Visual Studio 2013을 사용한 테스트 코드 빌드와 실행
____새로운 프로젝트의 생성
____새로운 소스 코드의 생성
____코드 입력과 빌드 및 실행
__03 실행과 디버깅
____input.txt 파일의 저장 위치
____콘솔에서 실행 파일 입력해 실행하기

저자 소개 관련자료 보이기/감추기

저 자 소 개
지은이 조중필
미국 대학에서 수학을 전공하고 여러 스타트업을 거치며 실리콘밸리에서 교육용 앱 개발 회사를 설립했다. 한국을 비롯한 아시아 국가의 초·중·고등학교 학생들이 주입식 교육으로 인해 창의성이 부족함을 안타까워하면서 글로벌 인재로 성장하는 데 필요한 새로운 교육법을 개발하려고 불철주야 고민 중이다.

지은이 한현상
컴퓨터 공학을 전공하고 아이폰 열풍이 한창이던 2010년, 몇몇 친구들과 의기투합해 교육용 앱 개발 회사를 설립했으나 실패한 경험이 있다. 현재는 IT 업계 프로그래밍 교육 분야의 팀장이다.

지은이 이주호
영문학과 재학 중에 C를 접한 후 전공 선택이 잘못되었음을 깨닫고 바로 컴퓨터 공학으로 진로를 변경했다. 현재는 프리랜서 개발자로 미래를 개척 중이다. 과거의 자신처럼 진로 선택이 잘못된 젊은이가 없도록 올바른 진로를 선택할 수 있는 커리어 컨설턴트가 되고 싶은 야망이 있다.

만든이 코멘트 만든이 코멘트 보이기/감추기

안녕하세요. 이책의 편집자 입니다.
2016-05-26
『알고리즘 문제 풀이 전략』 2쇄는 아래 댓글 등에서 지적받았던 1쇄의 오류를 수정해서 재출간했습니다.
1쇄 발행에서 책의 오류로 인해 독자님께 큰 불편을 드린 점 다시 한번 깊이 사과드립니다.

한빛미디어 담당자 드림

출판사 리뷰 출판사 리뷰 보이기/감추기

이 책의 특징과 장점

-. 프로그래머에게 꼭 필요한 주요 알고리즘 개념을 그림과 코드를 통해서 설명
-. Level 1~4의 알고리즘 난이도, Easy, Mid, Hard의 코딩 난이도로 제시하는 수준별 알고리즘 문제
-. 문제 해결의 핵심을 제시하는 브레인 스토밍
-. C 프로그래밍 기반

어떤 독자를 위한 책인가?

-. 취업, 승진, 대회 입상을 목표로 알고리즘 테스트를 준비하는 프로그래머
-. C를 공부한 후 알고리즘 이해도를 높이려는 대학생

알고리즘 문제 해결 능력은 선택이 아닌 필수다!
소프트웨어 역량 테스트를 준비하는 프로그래머의 필독서!

초급 프로그래머가 고급 프로그래머로 성장하는 과정에서 겪는 가장 큰 어려움은 알고리즘 문제를 이해하고 해결하는 능력이다. 이런 이유로 외국의 많은 IT 기업은 프로그래머 채용 시 코딩 테스트 중심의 면접 과정을 진행해 알고리즘 이해도를 확인하고 있다. 최근 국내 기업에서도 프로그래머의 채용 과정 중 하나로 4~5단계 레벨로 구분하는 알고리즘 테스트를 꼭 포함시키고 있다.

이 책은 이러한 추세에 맞춰 다양한 알고리즘 문제를 해결하는 데 꼭 필요한 40여 가지의 알고리즘 문제 풀이 전략을 소개한다. 프로그래머로서의 실력 향상는 물론이고 프로그래밍 대회 입상, 취업, 승진, 이직 등 프로그래머의 이력 관리에 관심이 있다면 꼭 이 책을 읽고 고급 프로그래머가 될 수 있기를 희망한다.

회원리뷰 (18건) 리뷰 총점8.0

혜택 및 유의사항?
포토리뷰 [한빛미디어] 알고리즘 문제 풀이 전략 내용 평점3점   편집/디자인 평점3점 YES마니아 : 로얄 0***m | 2017.11.15 | 추천0 | 댓글0 리뷰제목
11월 15일 리뷰 - 리뷰자 김종욱 알고리즘 문제 풀이 전략조중필, 한현상, 이주호 지음  초판 인쇄가 잘못되어 안타깝게도 별점이 상당히 낮은 책. 그래서 2쇄가 새로이 발행되고 나서 모든 에러가 정정된 환골탈태? 한 책을 이번 기회에 리뷰를 하고자 한다. 무엇보다 이 책은 1년전에 리뷰가 완성되었어야 했음에도 불구하고 본 블로거가 그 동안 너무 많은? 일들인지;
리뷰제목

11월 15일 리뷰 - 리뷰자 김종욱


클로버 알고리즘 문제 풀이 전략

조중필, 한현상, 이주호 지음

 

 초판 인쇄가 잘못되어 안타깝게도 별점이 상당히 낮은 책. 그래서 2쇄가 새로이 발행되고 나서 모든 에러가 정정된 환골탈태? 한 책을 이번 기회에 리뷰를 하고자 한다. 무엇보다 이 책은 1년전에 리뷰가 완성되었어야 했음에도 불구하고 본 블로거가 그 동안 너무 많은? 일들인지 게으름인지 모를 상황에 놓여 있어 리뷰를 하지 못햇는데.. 모처럼 시간을 쪼게고 쪼게서 리뷰를 하게되었다. !

  

책에 관한 본격적인 리뷰에 임하기에 앞서 어떤 사람들에게 본 서를 권하는지 적어보도록 하겠다.


어떤 독자를 위한 책인가

 본 서는 이제 막 알고리즘에 입문하는 분들이나 혹은 알고리즘에 대해서 어느정도는 아는데, 이를 좀더 체계화 하고 싶은 분들이 공부하기에 좋은 구성을 하고 있다. 하지만 아쉽게도 중급자 이상의 분들이라면 이 책을 그리 권하지는 않는다. 중급자 이상의 분들이라면 '코드와 그림으로 마스터하는 알고리즘' 이나 혹은 'Top Coder algorithm Training','문제 풀이로 보는 알고리즘' 책의 내용이 보다 심오하고 생각할 점들이 있기 때문이다. 또한 책의 분석 순서가 나름 체계적이긴 하나 약간 조잡한 감이 없잖아 있기 때문에 본서 만 가지고 공부하기 보단 다른 여러 책들을 참고하며 같이 공부하면 효과가 더욱 향상 될 것이라 생각된다. 

    

책의 구성】 '알고리즘 문제 풀이 전략책의 구성은 어떠한가.


망치 본 서의 구성은 총 17가지의 쳅터로 구성되어있다. 처음에는 알고리즘의 정의를 설명하고 있으며 ( 예전엔 이 부분에서 에러가 심하게 발견 되었지만 지금은 오탈자들이 전부 개선되었다.) 그 다음 장부터는 기본적인 자료구조를 설명한 후에 알고리즘 문제들을 접근하는 식으로 순서가 짜여있다. 다만 본 알고리즘 풀이 과정에서 아쉬운 접근법으로 책이 구성되어 있는게 약간의 흠이라면 흠이다. 가령 테스트 케이스를 보여주고 각각의 테스트 케이스가 단개별로 진행되는 것이 보이지 않거나, 문제가 너무 두리 뭉실하여 알고리즘을 구축하는데 있어서 추론이 어렵다는 문제점 등이 있다. 허나 이 역시도 나름 공부가 되니, 소스코드를 같이 봐가며 분석한다면 실력 향상에 도움이 될 것임이 틀림 없다고 생가된다. ( 블로거의 경우 알고리즘 문제 책 전개 방식은 Top Coder 책이나, 문제풀이로 보는 알고리즘' 책 방식을 선호한다.) 책의 순서는 다음과 같다.

Part I. 꼭 알아야 하는 필수 알고리즘

 

CHAPTER 1 알고리즘의 역할

    01 알고리즘의 정의

        알고리즘이란?

    02 알고리즘은 정말 필요한가?

        알고리즘이 없어도 프로그램을 실행할 수 있다?

        알고리즘의 세 가지 요소

    03 수학적 배경

        알고리즘의 수학적 표기 방법

        빅오 표기법의 시그마 사용 방법

    04 분석의 대상

        무엇을 분석할 것인가?

        반복문은 최대 반복 횟수로 계산한다

        중첩된 반목문은 중첩문 각각의 최대 반복 횟수를 곱해서 계산한다

        반복문이 떨어져서 2개 이상 있는 경우는 그중 가장 큰 값으로 계산한다

        if-else문은 알고리즘 성능에 영향을 미치지 않는다

        재귀 호출은 풀어서 계산한다

    05 알고리즘의 분석과 최적화

        프로그램의 수학적 분석 예

        프로그램의 최적화 예

    06 정리

 

CHAPTER 2 알고리즘을 배우기 전에 알아야 할 다섯 가지

    01 메모리와 주소의 관계

    02 자료형과 배열

        메모리와 자료형

        메모리와 배열

    03 배열의 응용

        함수와 일차원 배열의 사용

        다차원 배열

    04 포인터

        포인터는 왜 사용할까?

        포인터의 사용 형식

    05 배열과 포인터의 사용

        배열과 포인터의 기본적인 조합 방법

        배열과 포인터의 차이점

        배열을 사용하는 포인터를 함수의 매개변수로 사용

    06 포인터 배열과 포인터 연산

        포인터 배열이란?

        포인터 연산의 이해

    07 포인터의 활용: Call by reference

    08 정리

 

CHAPTER 3 기본적인 자료구조

    01 링크드 리스트란?

    02 링크드 리스트의 삽입과 삭제

        링크드 리스트의 특징

        링크드 리스트의 삽입 알고리즘

        링크드 리스트의 삭제 알고리즘

    03 이중 링크드 리스트

        이중 링크드 리스트

        이중 링크드 리스트의 삽입과 삭제 알고리즘

    04 스택의 개념과 알고리즘

        스택의 개념

        스택의 구현

        푸시와 팝

    05 큐의 개념과 알고리즘

        큐의 개념

        배열을 사용한 큐의 구현

        링크드 리스트를 사용한 큐의 구현

    06 정리

 

CHAPTER 4 트리

    01 트리의 개념과 주요 용어

        트리의 개념

        트리 관련 주요 용어

        이진 트리

        트리의 순회 알고리즘

    02 전위 순회 알고리즘

    03 중위 순회 알고리즘

        재귀 호출을 사용한 중위 순회

        스택을 사용한 중위 순회

    04 후위 순회 알고리즘

        재귀 호출을 사용한 후위 순회

        스택을 사용한 후위 순회

        스택을 사용하는 순회 알고리즘의 비교

    05 단계 순회 알고리즘

    06 정리

 

CHAPTER 5 트리의 응용

    01 AVL 트리

        이진 트리의 문제점

        AVL 트리

        AVL 트리의 구성

    02 2-3 트리

        AVL 트리의 문제점을 해결하는 2-3 트리

        2-3 트리의 구현

        2-3 트리의 변형

    03 정리

 

CHAPTER 6 기본 정렬 알고리즘

    01 다양한 정렬 알고리즘

    02 선택 정렬 알고리즘

        선택 정렬 알고리즘의 개념

        선택 정렬 알고리즘의 분석

    03 삽입 정렬 알고리즘

        삽입 정렬 알고리즘의 개념

        삽입 정렬 알고리즘의 분석

    04 버블 정렬 알고리즘

        버블 정렬 알고리즘의 개념

        버블 정렬 알고리즘의 분석

    05 셸 정렬 알고리즘

        셸 정렬 알고리즘의 개념

        셸 정렬 알고리즘의 분석

06 정리

 

CHAPTER 7 향상된 정렬 알고리즘

    01 퀵 정렬 알고리즘

        퀵 정렬 알고리즘의 개념

        퀵 정렬 알고리즘의 분석

    02 기수 정렬 알고리즘

        기수 정렬 알고리즘의 개념

        기수 정렬 알고리즘의 분석

    03 병합 정렬 알고리즘

        병합 정렬 알고리즘의 개념

        병합 정렬 알고리즘의 분석

    04 힙 정렬 알고리즘

        힙 정렬 알고리즘의 개념

        힙 정렬 알고리즘의 분석

    05 정리

 

CHAPTER 8 이진 검색 알고리즘

    01 이진 검색 알고리즘

        이진 검색 알고리즘의 개념

    02 이진 검색 트리 알고리즘

        이진 검색 트리 알고리즘의 특성

        이진 검색 트리 알고리즘의 데이터 삽입

        이진 검색 트리 알고리즘의 데이터 삭제

    03 정리

 

CHAPTER 9 해시 알고리즘

    01 해시 알고리즘

        -주소 검색 알고리즘

        -매핑 검색 알고리즘

    02 해시 알고리즘의 문제점

        해시 알고리즘의 데이터 중복 문제

    03 해시 알고리즘의 문제 해결 방법

        해시 알고리즘에서 발생되는 문제들

    04 정리

 

Part II. 실전 알고리즘 문제 해결

 

CHAPTER 10 몸풀기 알고리즘 문제

    01 10진수와 16진수 변환 프로그램

    02 숫자 맞추기

        임의의 숫자를 생성하는 방법

        프로그램이 계속 실행되도록 하는 방법

    03 최대공약수 구하기

        임의의 숫자의 약수를 구하는 방법

        임의의 두 숫자에 공통으로 해당하는 약수를 구하는 방법

        임의의 두 숫자에 공통으로 해당하는 약수 중 최댓값을 선택하는 방법

    04 피보나치 수열

    05 임의의 숫자 배수의 개수와 합 구하기

    06 소수 구하기

        소수를 구하는 기능

        한 행에 값 8개씩 맞춰 출력하는 기능

    07 지그재그 숫자 출력하기 LEVEL 1 Hard

        전체 총 몇 행을 출력하는지 결정하는 for

        출력할 행이 홀수인 경우의 for

        출력할 행이 짝수인 경우의 for

    08 재귀 호출로 최대공약수 구하기

        첫 번째 재귀 호출: x = 4, y = 6

        두 번째 재귀 호출: x = 6, y = 4

        세 번째 재귀 호출: x = 4, y = 2

        네 번째 재귀 호출: x = 2, y = 0

        최종 결과

    09 정리

 

CHAPTER 11 기본기를 다지는 알고리즘 문제

    01 탐욕 알고리즘

    02 세포의 자기 증식 프로젝트

    03 재난 관리 프로젝트

    04 블록 쌓기 게임

 

CHAPTER 12 수학식을 이용하는 알고리즘 I

    01 분할 정복 알고리즘의 특징

    02 하노이의 탑

    03 기약 분수 구하기

    04 동전 옮기기

    05 숫자 순환

 

CHAPTER 13 수학식을 이용하는 알고리즘 II

    01 탐욕 알고리즘의 특징

    02 앞뒤가 같은 제곱

    03 연 소수

    04 최대 연속 부분합

    05 화물차 배치

    06 대칭 행렬 구하기

 

CHAPTER 14 동적 계획법의 기본 개념

    01 동적 계획법의 특징

    02 계단 오르기 게임

    03 타일 바르기

    04 목장 울타리 만들기

    05 한빛스키장 리프트 가격

    06 포인트 스키 활강

 

CHAPTER 15 동적 계획법 응용

    01 동적 계획법의 전형적인 문제

    02 한빛 패스트푸드

    03 시장의 도시 방문기

    04 신입 사원 선발

    05 해커의 도전

    06 배낭 여행

 

CHAPTER 16 맵을 이용하는 알고리즘

    01 백 트래킹 알고리즘의 개념

    02 생화학 폭탄

    03 아파트 단지

    04 피곤한 배달부

    05 체스

    06 배수로 공사

 

CHAPTER 17 출제 빈도가 높은 알고리즘 문제

    01 세뱃돈 만들기

    02 한빛캐피탈의 스타트업 투자

    03 외양간 고치기

    04 영역의 크기

    05 식인종과 연구원

 

부록 Visual Studio 2013의 설치 및 설정 방법

    01 Visual Studio 2013의 다운로드와 설치

        Visual Studio 웹사이트

        Visual Studio 2013의 설치

        Visual Studio 2013의 실행

    02 Visual Studio 2013을 사용한 테스트 코드 빌드와 실행

새로운 프로젝트의 생성

        새로운 소스 코드의 생성

        코드 입력과 빌드 및 실행

    03 실행과 디버깅

        input.txt 파일의 저장 위치

        콘솔에서 실행 파일 입력해 실행하기

더보기 (더 보기 안내 글을 직접 입력할 수 있습니다.)


알고리즘 문제 풀이 전략 을 읽으며…….

 알고리즘 문제 해결에 있어서 가장 중요한 것은 전체 탐색을 하여 해당 문제를 전체적으로 살펴 본 후, 가지치키나 혹은 가중치를 두어 해당 솔루션들만 빠르게 추출해 내는 것이다. 가령 다이나믹 프로그래밍이나 재귀적 방식(순열, 조합), 맵을 이용하거나 이러한 것들이 그것에 속한다. 처음에는 알고리즘 문제를 풀때 어려움을 경험할 수 있다. 블로거도 그랬다. 블로거는 옜날 15년 전에 Swap 함수조차 못만들던 때가 있었다. 그만큼 알고리즘은 생소하고 어렵게 느껴지는 것이 현실이다. 하지만 어려움을 인정하고 꾸준히 연습하고 공부한다면 자신도 모르는 사이에 높은 산의 정상 위에 서있는 것을 확인할 수 있을 것이다.



점수…….

구성 : ★ 내용:★  디자인: ★★★ 전문성 : 


#본 리뷰는 리뷰자 김종욱의 저작권에 귀속되므로 참고시 참고 URL 명시 및 저작자에게 사용 통보를 해 주시기 바랍니다.

#본 리뷰의 점수 및 평가 내용은 김종욱 리뷰자의 한정된 것이므로 지극히 주관된 평가 임을 명시합니다.

#학습과 관련된 질문과 문제에 대한 질문은 일절 받지 않습니다. 스스로 찾아서 학습하는 것 그것이야 말로 진정한 학습자입니다. 



######  감사합니다  ######  

댓글 0 이 리뷰가 도움이 되었나요? 공감 0
오타의 향연 내용 평점4점   편집/디자인 평점2점 YES마니아 : 로얄 d**********y | 2017.09.10 | 추천1 | 댓글0 리뷰제목
내용은 괜찮은 편이지만 예제 코드에 쓸모없는 조건이 들어가서 부연되는 부분들이 있고 오타도 꽤 있어서 읽다보면 지친다.원래 마감이 중요하기 때문에 내용이 아무리 좋더라도 디테일한 측면에서 깔끔하게 마무리되어 있지 않으면 전체적인 완성도에 신뢰가 크게 떨어지게 마련이다. 참고로 제가 가지고 있는 책은 2쇄이다.예를 들어, 책의 예제코드 4-5는 실제로 다운받아서 gcc 빌드;
리뷰제목

내용은 괜찮은 편이지만 예제 코드에 쓸모없는 조건이 들어가서 부연되는 부분들이 있고 오타도 꽤 있어서 읽다보면 지친다.

원래 마감이 중요하기 때문에 내용이 아무리 좋더라도 디테일한 측면에서 깔끔하게 마무리되어 있지 않으면 전체적인 완성도에 신뢰가 크게 떨어지게 마련이다. 참고로 제가 가지고 있는 책은 2쇄이다.


예를 들어, 책의 예제코드 4-5는 실제로 다운받아서 gcc 빌드후 실행해보면 동작하지 않는데,

원인을 살펴보면 stack.c의 코드에 버그가 있다.


Top = (Top++) % MAX; --> Top = (++Top) % MAX;


로 수정이 필요한데, 전위 후위 연산자의 기본적인 사용조차 틀려있어서 책의 내용에 대한 신뢰도를 급격히 깎아먹는다.

저자가 알지만 실수했다 치더라도, 기본적으로 예제파일이 돌아가는지는 확인하는게 당연한 거 아닌가.

책의 인쇄야 오자가 있을수 있다치더라도 예제파일까지 동일하게 문제가 있다는 건 더이상 단순 오타로 볼수 없는 문제가 된다.


이런 측면에서 이 책은 문제점이 크다고 말할 수 있다. 구성과 내용이 좋은 편이지만, 오타가 많고 코드구성에 실수가 종종 있어서 그런 걸 일일이 신경쓰면서 읽어야 해서 보다보면 쓸데없이 지쳐버리게 되었다.


예제코드를 보면서 디버그를 하면서 책을 읽어가야 한다니 짜증이 치민다.

댓글 0 1명이 이 리뷰를 추천합니다. 공감 1
알고리즘 내용 평점5점   편집/디자인 평점3점 YES마니아 : 플래티넘 s******r | 2017.05.06 | 추천0 | 댓글0 리뷰제목
알고리즘 공부를 하기에 괜찮은 책입니다. 수록된 문제들은 공부하기 좋은 문제들로 잘 엄선되어 있습니다.풀이법은... 음, 제 마음에 100% 들지는 않지만, 그래도 참고할만한 것 같습니다.알고리즘의 기초부터 하나하나씩 학습을 할 수 있는 책은 아니기에,알고리즘 초보자들이 학습을 하면서 보기에는 적합하지 않은 책입니다. 다만, 알고리즘 문제들이 어떤 스타일인지 맛보;
리뷰제목

알고리즘 공부를 하기에 괜찮은 책입니다. 

수록된 문제들은 공부하기 좋은 문제들로 잘 엄선되어 있습니다.


풀이법은... 음, 제 마음에 100% 들지는 않지만, 그래도 참고할만한 것 같습니다.


알고리즘의 기초부터 하나하나씩 학습을 할 수 있는 책은 아니기에,

알고리즘 초보자들이 학습을 하면서 보기에는 적합하지 않은 책입니다. 

다만, 알고리즘 문제들이 어떤 스타일인지 맛보기 용으로 진입하기에 괜찮은 책이고,

나중에 다른 교재 등을 통해 기초부터 어느 정도 익히고 나서 내 실력이 어느 정도 나아졌는지

확인하기에도 괜찮은 책입니다.



댓글 0 이 리뷰가 도움이 되었나요? 공감 0

한줄평 (9건) 한줄평 총점 8.8

혜택 및 유의사항 ?
평점5점
내용 만족합니다. 괜찮은 것 같습니다.
이 한줄평이 도움이 되었나요? 공감 0
블***자 | 2017.06.20
평점5점
열심히 공부하고 있습니다.
이 한줄평이 도움이 되었나요? 공감 0
s*********k | 2017.01.11
평점5점
알고리즘 공부를 위해 구입하였습니다.
이 한줄평이 도움이 되었나요? 공감 0
s********h | 2016.11.24
  •  쿠폰은 결제 시 적용해 주세요.
1   30,600
뒤로 앞으로 맨위로 aniAlarm