본문 바로가기

추천 검색어

실시간 인기 검색어

읽고 나면 진짜 쉬워지는 자료 구조

더 빠르고 효율적인 코드를 위해꼭 알아야 할 CS 기초!
제레미 쿠비카 저자(글) · 오현석 번역
길벗 · 2024년 03월 19일
10.0
10점 중 10점
(8개의 리뷰)
도움돼요 (71%의 구매자)
  • 읽고 나면 진짜 쉬워지는 자료 구조 대표 이미지
    읽고 나면 진짜 쉬워지는 자료 구조 대표 이미지
  • 읽고 나면 진짜 쉬워지는 자료 구조 부가 이미지1
    읽고 나면 진짜 쉬워지는 자료 구조 부가 이미지1
  • 읽고 나면 진짜 쉬워지는 자료 구조 부가 이미지2
    읽고 나면 진짜 쉬워지는 자료 구조 부가 이미지2
  • A4
    사이즈 비교
    210x297
    읽고 나면 진짜 쉬워지는 자료 구조 사이즈 비교 184x236
    단위 : mm
01 / 04
무료배송 소득공제
10% 27,000 30,000
적립/혜택
1,500P

기본적립

5% 적립 1,500P

추가적립

  • 5만원 이상 구매 시 추가 2,000P
  • 3만원 이상 구매 시, 등급별 2~4% 추가 최대 1,500P
  • 리뷰 작성 시, e교환권 추가 최대 300원
배송안내
무료배송
배송비 안내
국내도서/외국도서
도서 포함 15,000원 이상 구매 시 무료배송
도서+사은품 또는 도서+사은품+교보Only(교보굿즈)

15,000원 미만 시 2,500원 배송비 부과

교보Only(교보배송)
각각 구매하거나 함께 20,000원 이상 구매 시 무료배송

20,000원 미만 시 2,500원 배송비 부과

해외주문 서양도서/해외주문 일본도서(교보배송)
각각 구매하거나 함께 15,000원 이상 구매 시 무료배송

15,000원 미만 시 2,500원 배송비 부과

업체배송 상품(전집, GIFT, 음반/DVD 등)
해당 상품 상세페이지 "배송비" 참고 (업체 별/판매자 별 무료배송 기준 다름)
바로드림 오늘배송
업체에서 별도 배송하여 1Box당 배송비 2,500원 부과

1Box 기준 : 도서 10권

그 외 무료배송 기준
바로드림, eBook 상품을 주문한 경우, 플래티넘/골드/실버회원 무료배송쿠폰 이용하여 주문한 경우, 무료배송 등록 상품을 주문한 경우
4/15(화) 도착
기본배송지 기준
배송일자 기준 안내
로그인 : 회원정보에 등록된 기본배송지
로그아웃 : '서울시 종로구 종로1' 주소 기준
로그인정확한 배송 안내를 받아보세요!

이달의 꽃과 함께 책을 받아보세요!

1권 구매 시 결제 단계에서 적용 가능합니다.

알림 신청하시면 원하시는 정보를
받아 보실 수 있습니다.

키워드 Pick

키워드 Pick 안내

관심 키워드를 주제로 다른 연관 도서를 다양하게 찾아 볼 수 있는 서비스로, 클릭 시 관심 키워드를 주제로 한 다양한 책으로 이동할 수 있습니다.
키워드는 최근 많이 찾는 순으로 정렬됩니다.

읽고 나면 진짜 쉬워지는 자료 구조 상세 이미지
기술 면접, 코딩 테스트의 필수 주제인 자료 구조!
최적의 자료 구조를 선택해야 더 효율적인 코드를 구현할 수 있다!
자료 구조를 사용하는 궁극적인 이유는 메모리를 효율적으로 사용하면서 데이터를 안정적으로 처리하기 위해서다. 따라서 데이터의 특징을 잘 분석하고 그에 맞게 ‘적합한’ 자료 구조를 선택하는 것이 중요하다. 기술 면접에서 자료 구조나 알고리즘을 포함하는 이유도 바로 이 때문이다. 이 책은 단순히 자료 구조의 종류를 나열하고 소개하는 것이 아니라 핵심 자료 구조 15개에 초점을 맞추고 어떻게 동작하는지, 왜 이 자료 구조가 중요한지 알려준다. 책의 내용을 모두 학습하면 최적의 자료 구조를 선택할 수 있는 판단력을 기를 수 있을 것이다. 우리에게 익숙한 실생활 예시로 풀어서 설명하기 때문에 읽는 것만으로도 추상적인 개념들을 충분히 이해할 수 있다. 자료 구조를 따로 배운 적이 없거나 이미 배웠지만 기억이 잘 나지 않아 빠르게 복습하고 싶다면 이 책으로 당장 시작해보자!

작가정보

저자(글) 제레미 쿠비카

인공지능과 머신 러닝 전문가인 엔지니어링 디렉터로, 코넬대학교에서 컴퓨터 과학 학사, 카네기 멜런 대학교에서 로봇학박사 학위를 받았다. 대학원 연구 시절 잠재적인 킬러 소행성을 감지하기 위한 알고리즘 개발에 참여했다. 『Computational Fairy Tales』, 『The CS Detective』(No Starch Press, 2016)를 저술했고, ‘Computational Fairy Tales’ 블로그도 작성했다.

번역 오현석

오현석

모빌리티42 이사로 일하면서 매일 고객의 요청에 따라 코드를 만드는 현업 개발자다. 어릴 때 처음 컴퓨터를 접하고 매혹된 후 경기과학고, KAIST 전산학과(프로그래밍 언어 전공 석사)를 거치면 서 계속 컴퓨터를 사용해왔다. 직장에서는 주로 코틀린이나 자바를 사용한 서버 프로그래밍을 하고, 주말이나 여가 시간에는 번역을 하거나 공부를 하면서 즐거움을 찾는다. 시간이 아주 많이 남 을 때는 시뮬레이션 게임을 즐기면서 머리를 식히고, 어떻게 하 면 막내 자식을 프로그래밍의 세계로 끌어들일 수 있을지를 고 민하는 아빠이기도 하다. 『코어 파이썬 애플리케이션 프로그래밍』(에이콘, 2014)을 시작으로 『코틀린 함수형 프로그래밍』(에이콘, 2023), 『아토믹 코틀린』(길벗, 2023), 『코딩 좀 아는 사람』(윌북, 2023) 등 30여 권의 책을 번역했다.

목차

  • 1장 메모리 안 정보

    1.1 변수

    1.2 복합 자료 구조

    1.3 배열

    1.4 문자열

    1.5 변수와 배열이 중요한 이유

    2장 이진 탐색

    2.1 문제 정의

    2.2 선형 스캔

    2.3 이진 탐색 알고리즘

    2.4 이진 탐색 적용하기

    2.5 실행 시간 045

    2.6 이진 탐색이 중요한 이유

    3장 동적 자료 구조

    3.1 배열의 한계

    3.2 포인터와 참조

    3.3 연결 리스트

    3.4 연결 리스트에 대한 연산

    3.5 이중 연결 리스트

    3.6 항목들의 배열과 연결 리스트

    3.7 연결 리스트가 중요한 이유

    4장 스택과 큐

    4.1 스택

    4.2 큐

    4.3 순서의 중요성

    4.4 스택과 큐가 중요한 이유

    5장 이진 탐색 트리

    5.1 이진 탐색 트리 구조

    5.2 이진 탐색 트리에서 탐색하기

    5.3 이진 탐색 트리 변경하기

    5.4 균형이 맞지 않는 트리의 위험성

    5.5 이진 탐색 트리 대량 구축

    5.6 이진 탐색 트리가 중요한 이유

    6장 트라이와 적응형 자료 구조

    6.1 문자열로 이뤄진 이진 탐색 트리

    6.2 트라이 118

    6.3 트라이가 중요한 이유

    7장 우선순위 큐와 힙

    7.1 우선순위 큐

    7.2 최대 힙

    7.3 우선순위 갱신하기

    7.4 최소 힙

    7.5 힙 정렬

    7.6 힙이 중요한 이유

    8장 격자

    8.1 최근접 이웃 탐색 소개

    8.2 격자

    8.3 격자에 대한 탐색

    8.4 격자 크기의 중요성

    8.5 2차원을 넘어

    8.6 공간 데이터를 넘어

    8.7 격자가 중요한 이유

    9장 공간 트리

    9.1 쿼드 트리

    9.2 k-d 트리

    9.3 쿼드 트리와 k-d 트리가 중요한 이유

    10장 해시 테이블

    10.1 키를 사용한 저장과 탐색

    10.2 해시 테이블

    10.3 해시 함수

    10.4 해시 테이블이 중요한 이유

    11장 캐시

    11.1 캐시 소개

    11.2 만료와 캐시

    11.3 다른 만료 전략들

    11.4 캐시가 중요한 이유

    12장 B-트리

    12.1 B-트리 구조

    12.2 B-트리 탐색하기

    12.3 키 삽입하기

    12.4 키 제거하기

    12.5 B-트리가 중요한 이유

    13장 블룸 필터

    13.1 블룸 필터 소개

    13.2 블룸 필터 매개변수 튜닝하기

    13.3 블룸 필터와 해시 테이블의 비교

    13.4 블룸 필터가 중요한 이유

    14장 스킵 리스트

    14.1 무작위적 구조와 결정적인 구조의 비교

    14.2 스킵 리스트 소개

    14.3 실행 시간

    14.4 스킵 리스트가 중요한 이유

    15장 그래프

    15.1 그래프 소개

    15.2 데이크스트라 알고리즘을 사용해 최단 경로 찾기

    15.3 프림의 알고리즘을 사용해 최소 스패닝 트리 찾기

    15.4 칸의 알고리즘을 이용한 위상 정렬

    15.5 그래프가 중요한 이유

    16장 결론

    16.1 데이터의 구조가 미치는 영향은 무엇인가?

    16.2 동적 자료 구조가 필요한가?

    16.3 분할 상환 비용이 무엇인가?

    16.4 어떻게 자료 구조를 구체적인 문제에 맞게 적응시킬 수 있을까?

    16.5 메모리와 실행 시간 사이의 트레이드오프란 무엇인가?

    16.6 자료 구조를 어떻게 튜닝할까?

    16.7 무작위화가 기대 동작에 미치는 영향은 어떤가?

    16.7 16장이 중요한 이유

책 속으로

이 책은 ‘자료 구조’를 통해 바라보는 계산적 사고(computational thinking)에 대한 책이다. 자료 구조는 데이터를 조직적으로 구성하고 저장하기 위한 구조다. 이 책은 유용한 자료 구조를 모아둔 레시피 이상의 책이다. 단순히 자료 구조를 모은 것에 그치지 않고, 각 자료 구조의 근본이 되는 생각과 복잡한 문제를 해결할 때 자료 구조가 미치는 영향을 탐구하며, 앞서 말한 계산적 사고를 직관적으로 이해할 수 있도록 실생활 예시를 들어 설명한다. 이 책의 목표는 데이터 안에 이미 존재하는 구조를 활용하거나 새로운 구조를 만들어 문제를 효율적으로 해결하는 방법을 통찰하는 것이다.
-제레미 쿠비카

출판사 서평

이 책은 단순히 자료 구조의 종류를 나열하고 소개하는 책이 아니다. 어떻게 동작하는지, 왜 이 자료 구조가 중요한지에 초점을 맞춰 재미있게 풀어낸 입문서이다. 수많은 도해와 유머러스한 비유를 통해 자료 구조가 프로그램을 어떻게 더 효율적이고 유연하게 만드는지 쉽게 배울 수 있다. 책에 나오는 모든 자료 구조는 프로그래밍 언어에 구애 받지 않는 의사 코드로 보여주며, 변수와 배열부터 스택, 캐시, 블룸 필터, 쿼드 트리, 그래프에 이르기까지 15개 이상의 핵심 자료 구조를 구현해 본다. 박물관의 수집품 컬렉션 인덱스를 구성하거나 만화 대사를 이용해 홍보 문구를 만들고 다람쥐가 나무 줄기를 따라 목적지로 이동하는 걸 관찰하고, 심지어는 가장 가까운 커피숍을 찾는 방법 등 일상에서 있을 법 하면서도 기발한 예제로 구성했다.

이 책에서 다루는 내용
● 계산 성능을 최적화하기 위해 속도, 유연성, 메모리 사용량 간의 균형 맞추기
● 필요에 따라 동적으로 확장하거나 축소할 수 있는 자료 구조 설계하기
● 간단한 자료 구조를 결합해 캐시 항목 추정, 값과 키 매핑, 메모리에 맞춰 노드 크기 조정 등 고급 작업 수행하기
● 해시 테이블에서 데이터 검색, 이진 검색 트리로 검색 속도 향상시키기
● B-트리로 검색 효율성 향상시키기, 무작위적 구조로 불량 데이터의 영향 줄이기
우리에게 익숙한 실생활 예시로 독자의 눈높이에 맞춰 설명하기 때문에 읽는 내내 재미있고 추상적인 개념들도 충분히 이해할 수 있다. 자료 구조를 따로 배운 적이 없거나 기억이 잘 나지 않아 빠르게 복습하고 싶다면 이 책 한 권으로 끝내길 추천한다.

기본정보

상품정보 테이블로 ISBN, 발행(출시)일자 , 쪽수, 크기, 총권수을(를) 나타낸 표입니다.
ISBN 9791140708765
발행(출시)일자 2024년 03월 19일
쪽수 376쪽
크기
184 * 236 * 19 mm / 795 g
총권수 1권

Klover 리뷰 (8)

구매 후 리뷰 작성 시, e교환권 200원 적립

10점 중 10점
/도움돼요
이 책은 의사 코드만 나옵니다. 국내 도서 다른거 읽어보다 어려워서 이 책을 구매했는데요 좀더 이해가 오긴 하네요. 의사 코드가 아닌 실제 코드를 다른 책을 참고 해야 하겠으나, 잘 모를때 의사코드와 실제코드 양쪽 다 보는게 쉽지 않더라구요. 그래서 일단 개념과 의사코드를 잘 읽히고 넘어가려고 합니다.
10점 중 10점
/추천해요
자료구조 책으로 추천합니다.

문장수집 (1)

문장수집 안내
문장수집은 고객님들이 직접 선정한 책의 좋은 문장을 보여주는 교보문고의 새로운 서비스입니다. 마음을 두드린 문장들을 기록하고 좋은 글귀들은 "좋아요“ 하여 모아보세요. 도서 문장과 무관한 내용 등록 시 별도 통보 없이 삭제될 수 있습니다.
리워드 안내
구매 후 90일 이내에 문장수집 작성 시 e교환권 100원을 적립해드립니다.
e교환권은 적립 일로부터 180일 동안 사용 가능합니다. 리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 한 상품에 최초 1회만 제공됩니다.
주문취소/반품/절판/품절 시 리워드 대상에서 제외됩니다.
판매가 5,000원 미만 상품의 경우 리워드 지급 대상에서 제외됩니다. (2024년 9월 30일부터 적용)

구매 후 리뷰 작성 시, e교환권 100원 적립

이진 탐색 알고리즘
읽고 나면 진짜 쉬워지는 자료 구조

교환/반품/품절 안내

  • 반품/교환방법

    마이룸 > 주문관리 > 주문/배송내역 > 주문조회 > 반품/교환 신청, [1:1 상담 > 반품/교환/환불] 또는 고객센터 (1544-1900)
    * 오픈마켓, 해외배송 주문, 기프트 주문시 [1:1 상담>반품/교환/환불] 또는 고객센터 (1544-1900)
  • 반품/교환가능 기간

    변심반품의 경우 수령 후 7일 이내,
    상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내
  • 반품/교환비용

    변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
  • 반품/교환 불가 사유

    1) 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
    (단지 확인을 위한 포장 훼손은 제외)
    2) 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
    예) 화장품, 식품, 가전제품(악세서리 포함) 등
    3) 복제가 가능한 상품 등의 포장을 훼손한 경우
    예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
    4) 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우 ((1)해외주문도서)
    5) 디지털 컨텐츠인 ebook, 오디오북 등을 1회이상 ‘다운로드’를 받았거나 '바로보기'로 열람한 경우
    6) 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
    7) 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우
    8) 세트상품 일부만 반품 불가 (필요시 세트상품 반품 후 낱권 재구매)
    9) 기타 반품 불가 품목 - 잡지, 테이프, 대학입시자료, 사진집, 방통대 교재, 교과서, 만화, 미디어전품목, 악보집, 정부간행물, 지도, 각종 수험서, 적성검사자료, 성경, 사전, 법령집, 지류, 필기구류, 시즌상품, 개봉한 상품 등
  • 상품 품절

    공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는 이메일과 문자로 안내드리겠습니다.
  • 소비자 피해보상 환불 지연에 따른 배상

    1) 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁 해결 기준 (공정거래위원회 고시)에 준하여 처리됨
    2) 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리함

상품 설명에 반품/교환 관련한 안내가 있는 경우 그 내용을 우선으로 합니다. (업체 사정에 따라 달라질 수 있습니다.)

기분 좋은 발견

이 분야의 신간

TOP