본문 바로가기

리디북스 접속이 원활하지 않습니다. 새로 고침(F5)해주세요.
계속해서 문제가 발생한다면 리디북스 접속 테스트를 통해 원인을 파악하고 대응 방법을 안내드리겠습니다.
테스트 페이지로 이동하기

RIDIBOOKS

리디북스 검색

최근 검색어

'검색어 저장 끄기'로 설정되어 있습니다.


리디북스 카테고리



누구나 자료 구조와 알고리즘 상세페이지

컴퓨터/IT 개발/프로그래밍

누구나 자료 구조와 알고리즘

구매종이책 정가16,000
전자책 정가12,800(20%)
판매가12,800
누구나 자료 구조와 알고리즘

책 소개

<누구나 자료 구조와 알고리즘> 사칙연산과 지수로만 이해하는 자료 구조와 알고리즘

수학 용어와 전문 용어가 아니어도 이해한다
이 분야의 책은 대부분 컴퓨터 공학 전공자를 대상으로 쓰였거나 고등학교 수학을 잘 안다고 가정하고 있다. 쉽게 설명했다는 책도 전문 용어로 가득하다. 비전공자나 수학적 기초가 약한 독자는 전문 용어에 두려움을 느끼며 이 주제를 이해할 만큼 자신이 똑똑하지 않다고 느끼며 이 주제를 회피한다. 그러나 자료 구조와 알고리즘은 대부분 상식선에서 이해할 수 있다. 상식이 통하는 설명으로 자료 구조와 알고리즘을 이해해보자.

프로그래밍의 핵심 스킬을 이해한다
자료 구조와 알고리즘은 프로그래밍의 핵심 스킬이다. 더 빠른 코드, 더 효율적인 코드를 작성하려면 반드시 알아야 하는 사고 방식이 자료 구조와 알고리즘에 담겨 있다. 추상적인 개념만 설명하는 대신 실생활에서 마주할 수 있는 상황을 제시하며 자료 구조와 알고리즘을 적용하는 방법을 보여준다. 자료 구조와 알고리즘은 개념만 이해하면 어떤 언어로도 구현할 수 있다는 것도 보여준다. 이 책에서는 자바스크립트, 루비, 파이썬으로 된 예제를 제시한다.

자료 구조와 알고리즘을 선택하는 방법을 배운다
전공 교재는 자료 구조와 알고리즘을 암기하고 시험만 볼 뿐이다. 입사 면접에서는 어떤 문제를 두고 배열, 연결 리스트, 해시 중에 무엇을 선택해야 하는지, 왜 그게 최적의 방법인지 묻는다. 자료 구조를 선택하는 방법, 선택한 자료 구조가 코드의 성능에 어떤 영향을 미치는지 설명하므로 암기된 단편적인 지식이 아닌 연결된 지식을 가르치고, 입사 면접을 준비할 때도 참고할 수 있게 했다.


출판사 서평

자료 구조와 알고리즘은 어떤 컴퓨터 공학 교육과정에서든 가장 기본적으로 다루는 과목입니다. 하지만 기초를 쌓는 과정임에도 불구하고 처음 접하는 학생은 누구나 당혹스러움을 감추지 못하죠. 생소한 용어, 난해한 개념, 아무리 응용과학이라지만 수학도 아니고 과학도 아닌 것처럼 보이는 아리송한 내용이 끝없이 반복되거든요. 무엇을 위해 무엇을 배우고 있는가를 모르는 채 다 배웠다고 생각하며 한 학기가 끝납니다.
이렇게 되면 실제 개발과 이론 간 큰 공백이 생깁니다. 어렵게 배운 내용을 실용적으로 써보지도 못할뿐더러 다른 사람이 작성한 코드를 이해하고 분석하는 데도 한계가 있습니다. 훌륭한 프로그래머가 되려면 문법과 API만 꿰뚫어서는 부족하죠. 어떤 운영 체제에서 어떤 프로그래밍 언어를 사용하든 좋은 프로그램은 항상 적절한 자료 구조와 효율적인 알고리즘을 바탕으로 합니다. 필요할 때마다 관련 책이나 웹 페이지만 뒤적여서는 능력을 향상하기 어렵습니다.
이 책의 저자가 밝혔듯이 자료 구조와 알고리즘은 결코 어렵지 않습니다. 얼마든지 재밌고 이해하기 쉽게 설명될 수 있습니다. 복잡한 수학 개념이 아니라 이미 알고 있는 지식과 자세한 예제면 충분합니다. 이 책은 비전공자도 쉽게 따라갈 수 있는 설명과 구성으로 핵심 개념을 소개합니다. 또한, 자료 구조와 알고리즘 지식을 실제 개발에 적용해서 더욱 효과적이고 간결한 코드를 작성할 수 있도록 도와줍니다. 초심자라면 심화 과정을 듣기 전에 기초를 다지기 좋고, 숙련된 개발자라도 가볍게 되새기기 좋은 책입니다.
_심지현



저자 소개

세상을 코딩하는 법을 가르치는 데 전념하고 있는 전문 교육자이자 개발자이다. 코딩 부트캠프와 실습을 가르치는 Actualize의 설립자이자 CEO이다. "누구나 코딩할 수 있다(Anyone Can Learn To Code)"라는 교육 회사에서 온라인으로 코딩을 가르치고 있으며, 고등학교 컴퓨터 과학 커리큘럼, 기업체 교육 훈련을 운영하고 있다.

목차

1장 자료 구조가 중요한 까닭
__1.1 배열: 기초 자료 구조
__1.2 읽기
__1.3 검색
__1.4 삽입
__1.5 삭제
__1.6 집합: 단 하나의 규칙이 효율성을 바꾼다
__1.7 마무리

2장 알고리즘이 중요한 까닭
__2.1 정렬된 배열
__2.2 정렬된 배열의 검색
__2.3 이진 검색
__2.4 이진 검색 대 선형 검색
__2.5 마무리

3장 빅 오 표기법
__3.1 빅 오: 단계 수 계산
__3.2 상수 시간과 선형 시간
__3.3 같은 알고리즘, 다른 시나리오
__3.4 세 번째 유형의 알고리즘
__3.5 로가리즘
__3.6 O(log N) 해석
__3.7 실제 예제
__3.8 마무리

4장 빅 오로 코드 속도 올리기
__4.1 버블 정렬
__4.2 버블 정렬 실제로 해보기
__4.3 버블 정렬 구현
__4.4 버블 정렬의 효율성
__4.5 이차 문제
__4.6 선형 해결법
__4.7 마무리

5장 빅 오를 사용하거나 사용하지 않는 코드 최적화
__5.1 선택 정렬
__5.2 선택 정렬 실제로 해보기
__5.3 선택 정렬 구현
__5.4 선택 정렬의 효율성
__5.5 상수 무시하기
__5.6 빅 오의 역할
__5.7 실제 예제
__5.8 마무리

6장 긍정적인 시나리오 최적화
__6.1 삽입 정렬
__6.2 삽입 정렬해보기
__6.3 삽입 정렬 구현
__6.4 삽입 정렬의 효율성
__6.5 평균적인 경우
__6.6 실제 예제
__6.7 마무리

7장 해시 테이블로 매우 빠른 룩업
__7.1 해시 테이블 소개
__7.2 해시 함수로 해싱
__7.3 재미와 이익, 특히 이익을 남길 유의어 사전 만들기
__7.4 충돌 해결
__7.5 훌륭한 충돌 조정
__7.6 실제 예제
__7.7 마무리

8장 스택과 큐로 간결한 코드 생성
__8.1 스택
__8.2 스택 다뤄보기
__8.3 큐
__8.4 큐 다뤄보기
__8.5 마무리

9장 재귀를 사용한 재귀적 반복
__9.1 루프 대신 재귀
__9.2 기저 조건
__9.3 재귀 코드 읽기
__9.4 컴퓨터의 눈으로 바라본 재귀
__9.5 재귀 다뤄보기
__9.6 마무리

10장 속도를 높이는 재귀 알고리즘
__10.1 분할
__10.2 퀵 정렬
__10.3 퀵 정렬의 효율성
__10.4 최악의 시나리오
__10.5 퀵 셀렉트
__10.6 마무리

11장 노드 기반 자료 구조
__11.1 연결 리스트
__11.2 연결 리스트 구현
__11.3 읽기
__11.4 검색
__11.5 삽입
__11.6 삭제
__11.7 연결 리스트 다뤄보기
__11.8 이중 연결 리스트
__11.9 마무리

12장 이진 트리로 속도 향상
__12.1 이진 트리
__12.2 검색
__12.3 삽입
__12.4 삭제
__12.5 이진 트리 다뤄보기
__12.6 마무리

13장 그래프로 뭐든지 연결하기
__13.1 그래프
__13.2 너비 우선 탐색
__13.3 그래프 데이터베이스
__13.4 가중 그래프
__13.5 데이크스트라의 알고리즘
__13.6 마무리

14장 공간 제약 다루기
__14.1 공간 복잡도에 빅 오 표기법 적용
__14.2 시간과 공간 트레이드오프
__14.3 마치면서


리뷰

구매자 별점

4.5

점수비율

  • 5
  • 4
  • 3
  • 2
  • 1

2명이 평가함

리뷰 작성 영역

이 책을 평가해주세요!

내가 남긴 별점 0.0

별로예요

그저 그래요

보통이에요

좋아요

최고예요

별점 취소

구매자 표시 기준은 무엇인가요?

‘구매자’ 표시는 유료 도서를 결제하고 다운로드하신 경우에만 표시됩니다.

무료 도서 (프로모션 등으로 무료로 전환된 도서 포함)
'구매자'로 표시되지 않습니다.
시리즈 도서 내 무료 도서
'구매자’로 표시되지 않습니다. 하지만 같은 시리즈의 유료 도서를 결제한 뒤 리뷰를 수정하거나 재등록하면 '구매자'로 표시됩니다.
영구 삭제
도서를 영구 삭제해도 ‘구매자’ 표시는 남아있습니다.
결제 취소
‘구매자’ 표시가 자동으로 사라집니다.

이 책과 함께 구매한 책


이 책과 함께 둘러본 책



본문 끝 최상단으로 돌아가기


spinner
모바일 버전