서브메뉴

본문

Hello Coding 그림으로 개념을 이해하는 알고리즘
Hello Coding 그림으로 개념을 이해하는 알고리즘
저자 : 아디트야 바르가바
출판사 : 한빛미디어
출판년 : 2017
ISBN : 9788968483547

책소개

알고리즘은 쉽게 말해 어떤 문제를 해결하기 위한 명령을 모아 놓은 것이다. 이 책에서 다루는 알고리즘은 다른 코드보다 속도를 빠르게 하거나 아주 흥미로운 문제를 풀기 위한 것이다. 정렬 및 탐색과 같은 작업부터 시작해서 동적 프로그래밍 및 추천 시스템과 같은 훨씬 복잡한 문제를 해결할 수 있는 방법을 배울 수 있다.
[예스24에서 제공한 정보입니다.]

출판사 서평

어떤 독자를 위한 책인가?
-. 프로그래밍을 전혀 경험해보지 못한 비전공자 (중/고등학생, 대학생, 일반인)
-. 알고리즘의 기본기를 익히고자 하는 사람
-. 프로그래밍에 관심이 있는 이공계 학생

도서 특징
프로그래밍 세계로 초대하는
알고리즘 입문서
알고리즘은 전공자에게도 어렵게 느껴지죠?
이 책은 중학교 수준의 수학 지식만 있으면 이해할 수 있도록 쉽게 설명되어 있습니다.
알고리즘이 지루하고 어렵다는 편견을 깨기 위해 알기 쉽게 설명된 그림과 파이썬을 기반으로 한 친숙한 예제를 사용했습니다.
전공자는 물론 비전공자까지도 알고리즘의 흥미로운 논리 세계로 안내할 것입니다.

[추천사]
“이 책은 불가능한 일을 가능하게 했습니다. 수학이 즐겁고, 쉬워졌습니다.”
- 샌더 로셀, COAS 소프트웨어 시스템즈

“재미있는 소설을 읽듯이 알고리즘을 배우고 싶다면, 지금 이 책을 선택하세요.”
- 상카 라마나단, IBM 애널리틱스

[Hello Coding] 시리즈 소개
Hello Coding?

프로그래밍이 처음인가요?
배운 적은 있지만, 재미를 느끼지 못했다고요?
그래서 시리즈를 준비했습니다!
이 시리즈의 목표는 ‘쉽고’, ‘재미있게’, ‘끝까지’ 책을 읽는 데 있습니다.
이 책 한 권으로 프로그래밍의 고수가 될 수는 없겠지만, 프로그래밍의 재미는 확실하게 느낄 수 있을 겁니다.
이제, 시작해 볼까요?

누가 이 책을 읽어야 하나요?

-. 프로그래밍을 전혀 경험해보지 못한 비전공자 (중/고등학생, 대학생, 일반인)
-. 알고리즘의 기본기를 익히고자 하는 사람
-. 프로그래밍에 관심이 있는 이공계 학생
[교보문고에서 제공한 정보입니다.]

목차정보

Chapter 1 알고리즘의 소개

___01 들어가는 글

______성능에 대해 알아야 하는 것들

______문제를 풀기 위해 알아야 하는 것들

___02 이진 탐색

______더 좋은 탐색 방법

______실행 시간

___03 빅오 표기법

______알고리즘 실행 시간이 증가하는 속도가 다르다면?

______여러 가지 빅오 실행 시간 살펴보기

______최악의 실행 시간을 나타내는 빅오 표기법

______많이 사용하는 빅오 실행 시간의 예

______외판원 문제





Chapter 2 선택 정렬

___01 메모리가 동작하는 방법

___02 배열과 연결 리스트

______연결 리스트

______배열

______용어

______리스트의 가운데에 삽입하기

______삭제하기

___03 선택 정렬

______예제 코드





chapter 3 재귀

___01 시작하기에 앞서

___02 재귀

___03 기본 단계와 재귀 단계

___04 스택

______호출 스택

______재귀 함수에서 호출 스택 사용





chapter 4 퀵 정렬

___01 분할 정복

___02 퀵 정렬

___03 빅오 표기법 복습

______병합 정렬과 퀵 정렬 비교

______평균적인 경우와 최악의 경우 비교





chapter 5 해시 테이블

___01 해시 함수의 소개

___02 해시 함수

___03 해시 테이블을 사용하는 예

______해시 테이블로 조회하기

______중복된 항목을 방지하기

______해시 테이블을 캐시로 사용하기

______해시 테이블의 장점

___04 충돌

___05 성능

______사용률

______좋은 해시 함수란





chapter 6 너비 우선 탐색

___01 시작하기에 앞서

___02 그래프의 소개

______그래프란 무엇인가?

___03 너비 우선 탐색

______최단 경로 찾기

______큐

___04 그래프의 구현

___05 알고리즘의 구현

______실행 시간





chapter 7 다익스트라 알고리즘

___01 너비 우선 탐색 vs 다익스트라 알고리즘

___02 다익스트라 알고리즘

___03 용어 설명

___04 다익스트라 알고리즘을 사용한 물물 교환

___05 간선의 가중치가 음수인 경우

___06 구현





chapter 8 탐욕 알고리즘

___01 수업 시간표 짜기 문제

___02 배낭 채우기 문제

___03 집합 커버링 문제

______근사 알고리즘

___04 NP-완전 문제

______단계별로 풀어보는 외판원 문제

______어떤 문제가 NP-완전 문제인지 알 수 있는 방법은?





chapter 9 동적 프로그래밍

___01 배낭 채우기 문제

______단순한 방법

______동적 프로그래밍

___02 배낭 채우기 문제에서 자주 하는 질문

______만약 물건이 추가되면 어떻게 되나요?

______만약 행의 순서가 바뀌면 어떻게 되나요?

______격자를 행 방향이 아니라 열 방향으로 채워도 되나요?

______만약 더 작은 물건을 추가하면 어떻게 되나요?

______물건의 일부만 훔칠 수도 있나요?

______여행 일정 최적화 문제

______서로 의존적인 물건을 다루는 방법

______하위 배낭이 두 개 이상인 경우도 있을 수 있나요?

______배낭을 완전히 채우지 못하는 경우도 있나요?

___03 최장 공통 부분 문자열

______격자 만들기

______격자 채우기

______해답

______최장 공통 부분열

______최장 공통 부분열 문제의 해답





chapter 10 KNN 알고리즘

___01 오렌지와 자몽 분류하기

___02 추천 시스템 만들기

______특징 추출

______회귀 분석

______좋은 특징 고르기

___03 머신러닝의 소개

______OCR

______스팸 필터 만들기

______주식 시장 예측하기





chapter 11 더 공부해야 할 것

___01 트리

___02 역 인덱스

___03 퓨리에 변환

___04 병렬 알고리즘

___05 맵리듀스

______분산 알고리즘이 유용한 이유는?

______맵 함수

______리듀스 함수

___06 블룸 필터와 하이퍼로그로그

______블룸 필터

______하이퍼로그로그

___07 SHA 알고리즘

______파일 비교

______패스워드 확인

___08 지역 민감 해싱

___09 디피-헬만 키 교환

___10 선형 프로그래밍

___11 에필로그
[알라딘에서 제공한 정보입니다.]

QuickMenu