키워드 Pick
키워드 Pick 안내
관심 키워드를 주제로 다른 연관 도서를 다양하게 찾아 볼 수 있는 서비스로, 클릭 시 관심 키워드를 주제로 한 다양한 책으로 이동할 수 있습니다.
키워드는 최근 많이 찾는 순으로 정렬됩니다.
작가정보
David R. Musser는 Rensselaer Polytechnic Institute에서 교수로 재직중이다. STL 초창기때부터 STL에 깊숙이 관여해왔으며, STL의 창시자인 Alexander Stepanov와 함께 STL의 첫 번째 구현물을 개발하였다. ANSI/ISO C++ 언어 표준에 STL을 포함시키기 위해 적극 앞장섰던 인물이다. Gillmer J. Derge는 컨설팅 회사인 Toltec Software Services, Inc.의 사장 겸 CEO이다. 10년 넘게 C++ 애플리케이션을 개발해오고 있으며, General Electric Corporate R&D 부서에서 칠년간 일하면서 이룩한 기술적인 공로로 Whitney 상을 수상한 경력이 있다. Atul Saini는 C++로 고성능 메시지 미들웨어를 개발하는 회사인 Fiorno Software, Inc.의 사장 겸 CEO이다. 그는 1994년에 STL을 처음으로 상용화시켰으며, STL이 ANSI/ISO C++ 언어 표준에 포함되는데 큰 기여를 하였다.
목차
- PART 1 STL 소개
Chapter 1 소개
1.1 이 책은 누구를 위한 책인가
1.2 제네릭 프로그래밍의 개념과 그 중요성
1.3 C++ 템플릿과 제네릭 프로그래밍
1.4 템플릿이 지닌 "코드 비대화(code bloat)" 문제
1.5 STL의 성능 보증에 관한 이해
Chapter 2 STL 컴포넌트 개요
2.1 컨테이너(container)
2.2 제네릭 알고리즘
2.3 반복자
2.4 함수 객체
2.5 어댑터
2.6 할당기
Chapter 3 STL과 다른 라이브러리와의 차이점
3.1 확장성
3.2 컴포넌트 상호 교환 가능성
3.3 알고리즘/컨테이너 호환성
Chapter 4 반복자(iterator)
4.1 입력 반복자
4.2 출력 반복자
4.3 순방향 반복자
4.4 양방향 반복자
4.5 임의 접근 반복자
4.6 STL 반복자 계층 구조 : 알고리즘과 컨테이너의 효율적인 결합
4.7 삽입 반복자
4.8 입력, 출력 다시 보기 : 스트림 반복자
4.9 STL 알고리즘이 준수해야 하는 반복자 부류에 관한 명세
4.10 제네릭 알고리즘 설계하기
4.11 일부 알고리즘에서 더 강력한 반복자를 필요로 하는 이유
4.12 최적의 알고리즘 선택하기
4.13 상수 반복자 타입과 뮤터블 반복자 타입
4.14 STL 컨테이너가 제공하는 반복자 부류
Chapter 5 제네릭 알고리즘
5.1 STL 알고리즘의 기본 구성
5.2 변경 불가 시퀀스 알고리즘
5.3 변경 가능 시퀀스 알고리즘
5.4 정렬 관련 알고리즘
5.5 범용 수치 알고리즘
Chapter 6 시퀀스 컨테이너
6.1 벡터
6.2 덱(Deques)
6.3 리스트
Chapter 7 정렬 연관 컨테이너
7.1 셋과 멀티셋
7.2 맵과 멀티맵
Chapter 8 함수 객체
8.1 함수 포인터를 이용한 함수 전달
8.2 함수 객체를 템플릿 인자로 지정하는 것의 장점
8.3 STL에서 제공하는 함수 객체
Chapter 9 컨테이너 어댑터
9.1 스택 컨테이너 어댑터
9.2 큐 컨테이너 어댑터
9.3 우선 순위 큐 컨테이너 어댑터
Chapter 10 반복자 어댑터
Chapter 11 함수 어댑터
11.1 바인더
11.2 부정자
11.3 함수 포인터 어댑터
PART 2 예제 프로그램
Chapter 12 딕셔너리 검색 프로그램
12.1 주어진 단어의 애너그램 찾기
12.2 표준 string과 I/O 스트림 클래스를 이용한 대화형 프로그램
12.3 순열 생성과 딕셔너리 검색
12.4 완성된 프로그램
12.5 얼마나 빠른가?
Chapter 13 애너그램 그룹 검색 프로그램
13.1 애너그램 그룹 검색하기
13.2 STL과 함께 사용이 가능한 데이터 구조 정의하기
13.3 비교용 함수 객체 만들기
13.4 애너그램 그룹 검색 프로그램 전체
13.5 딕셔너리를 PS 객체의 벡터로 읽어들이기
13.6 비교 객체를 이용하여 단어쌍 정렬하기
13.7 상등 조건자 객체를 이용하여 이웃하는 동일 원소 검색하기
13.8 함수 어댑터를 이용하여 조건자 객체 얻어내기
13.9 애너그램 그룹을 출력 스트림으로 복사하기
13.10 애너그램 프로그램의 출력 결과
Chapter 14 향상된 애너그램 프로그램 : 리스트와 맵 컨테이너 사용
14.1 반복자 쌍을 담는 데이터 구조
14.2 리스트의 맵에 정보 저장하기
14.3 사이즈 순서로 애너그램 그룹 출력하기
14.4 향상된 애너그램 프로그램
14.5 프로그램 출력 결과
14.6 맵 컨테이너를 사용하는 이유
Chapter 15 멀티맵을 사용한 고속 애너그램 프로그램
15.1 애너그램 검색하기, 버전 3
15.2 멀티맵의 선언
15.3 멀티맵으로 딕셔너리 읽어들이기
15.4 멀티맵에서 애너그램 검색하기
15.5 사이즈 순서로 애너그램 그룹 출력하기
15.6 프로그램의 출력 결과
15.7 얼마나 빨라졌는가?
Chapter 16 반복자 클래스 정의하기
16.1 새로운 종류의 반복자 : 카운팅 반복자
16.2 카운팅 반복자 클래스
Chapter 17 STL과 객체 지향 프로그래밍과의 결합
17.1 상속과 가상 함수의 사용
17.2 컨테이너 인스턴스에서의 "코드 비대화" 방지
Chapter 18 이론 컴퓨터 과학 계보 출력 프로그램
18.1 날짜순으로 학생들을 정렬하기
18.2 학생과 담당 지도 교수를 서로 연결하기
18.3 트리의 루트 찾기
18.4 파일 읽어들이기
18.5 결과 출력하기
18.6 "계보" 프로그램의 전체 코드
Chapter 19 제네릭 알고리즘 시간 측정용 클래스
19.1 알고리즘의 정확한 시간 측정에 따르는 어려움
19.2 시간 측정에 따르는 어려움의 극복
19.3 프로그램 가다듬기
19.4 타이머 클래스를 이용한 자동화된 분석
19.5 STL sort 알고리즘 시간 측정하기
PART 3 STL 레퍼런스 가이드
Chapter 20 반복자 레퍼런스 가이드
20.1 입력 반복자 요구 사항
20.2 출력 반복자 요구 사항
20.3 순방향 반복자 요구 사항
20.4 양방향 반복자 요구 사항
20.5 임의 접근 반복자 요구 사항
20.6 반복자 트레이츠
20.7 반복자 연산
20.8 입력 스트림 반복자
20.9 출력 스트림 반복자
20.10 역 반복자
20.11 후위 삽입 반복자
20.12 전위 삽입 반복자
20.13 삽입 반복자
Chapter 21 컨테이너 레퍼런스 가이드
21.1 요구 사항
21.2 컨테이너 클래스 설명의 구성 방식
21.3 벡터
21.4 덱
21.5 리스트
21.6 셋
21.7 멀티셋
21.8 맵
21.9 멀티맵
21.10 스택 컨테이너 어댑터
21.11 큐 컨테이너 어댑터
21.12 우선 순위 큐 컨테이너 어댑터
Chapter 22 제네릭 알고리즘 레퍼런스 가이드
22.1 알고리즘 설명의 구성 방식
22.2 변경 불가 시퀀스 알고리즘의 개요
22.3 for_each
22.4 find
22.5 find_first_of
22.6 adjacent_find
22.7 count
22.8 mismatch
22.9 equal
22.10 search
22.11 search_n
22.12 find_end
22.13 변경 가능 시퀀스 알고리즘의 개요
22.14 copy, copy_backward
22.15 swap
22.16 transform
22.17 replace
22.18 fill
22.19 generate
22.20 remove
22.21 unique
22.22 reverse
22.23 rotate
22.24 random_shuffle
22.25 partition, stable_partition
22.26 정렬 관련 알고리즘의 개요
22.27 sort
22.28 nth_element
22.29 binary_search
22.30 merge
22.31 정렬 데이터 구조에서의 셋 연산
22.32 힙 연산
22.33 min과 max
22.34 lexicographical_compare
22.35 prev_permutation, next_permutation
22.36 범용 수치 알고리즘의 개요
22.37 accumulate
22.38 inner_product
22.39 partial_sum
22.40 adjacent_difference
Chapter 23 함수 객체와 함수 어댑터 레퍼런스 가이드
23.1 요구 사항
23.2 베이스 클래스
23.3 산술 연산
23.4 비교 연산
23.5 논리 연산
23.6 부정자 어댑터
23.7 바인더 어댑터
23.8 함수 포인터 어댑터
23.9 멤버 함수 포인터 어댑터
Chapter 24 할당기 레퍼런스 가이드
24.1 소개
24.2 할당기 요구 사항
24.3 디폴트 할당기
24.4 커스텀 할당기
Chapter 25 유틸리티 레퍼런스 가이드
25.1 소개
25.2 비교 함수
25.3 pair 클래스
Appendix A STL 헤더 파일
Appendix B String 레퍼런스 가이드
B.1 string 클래스
B.2 문자 트레잇
Appendix C 예제에서 사용했던 STL include 파일
C.1 예제 17.1에서 사용한 파일
Appendix D STL 관련 자료
D.1 STL의 SGI 레퍼런스 구현물을 구할 수 있는 사이트
D.2 이 책에 실린 예제의 소스 코드를 구할 수 있는 사이트
D.3 STL 호환 컴파일러
D.4 다른 STL 및 C++ 관련 문서
D.5 제네릭 프로그래밍 및 STL 관련 메일링 리스트
참고문헌
찾아보기
책 속으로
이 책에는 반복자(iterator), 제네릭 알고리듬(generic algorithm), 컨테이너(container), 함수 객체(function object) 등에 관한 상세한 설명이 담겨져 있다 (1부). 다소 규모가 크고, 그리 쉽지 않은 애플리케이션을 직접 작성해보면서 STL의 강력함과 유연성을 어떻게 활용되는지 확인할 수 있다 (2부). 또한 이 책에는 광범위하고 상세한 STL 레퍼런스 가이드가 담겨 있어 STL로 개발을 진행할 때, 항상 옆에 두고 수시로 참고할 수 있도록 되어 있다 (3부).
출판사 서평
이 책의 초판은 출간되었을 당시, 표준 템플릿 라이브러리(Standard Template Library, STL)에 관해 쉽고 자세한 설명과 실용적인 내용을 담고 있어 큰 호평을 받았던 책이었다. STL은 C++ 제네릭 데이터 구조와 알고리듬을 포함하고 있으며, 이를 통해 효율성의 저하없이도 다양한 곳에 적용할 수 있는, 재사용성(resuability)과 상호교환성(interchangeability)을 겸비한 컴포넌트가 제공되는 라이브러리이다. STL을 구현하고 이를 실제 개발에 적용하는 과정에서 중요한 역할을 담당했던 인물들이 직접 저술에 참여한 STL 튜토리얼 및 STL 레퍼런스 가이드, 제2판은 STL에 관한 폭넓은 내용을 담고 있어 레퍼런스로서의 역할도 겸하고 있다. STL을 구성하는 각 요소들이 쉽고 자세하게 설명되어 있으며, 많은 양의 예제 프로그램도 같이 제공된다.
"이번에 출간된 2판은 초판에 비해 내용이 더욱 명료해졌고, 예제가 더 많이 추가되어 실제 개발 환경에서 STL을 어떻게 사용해야 하는지 궁금해하는 개발자들에게 실질적인 도움이 될 것이다. 게다가, 성능과 성능 측정 도구에 대해서도 많은 지면을 할애하고 있다. 전체적으로 참 환영할만한 책이다."
- Lawrence Rauchwerger, Texas A&M University
"알고리듬은 많이, 개발 시간은 짧게! 초판보다 훨씬 많은 예제가 포함된 제네릭 알고리듬 관련 장들은 대만족이다. 예제들을 차곡 차곡 이해해 나가다보면 어느새 알고리듬, 컨테이너, 반복자들에 관해 익숙해져있는 자신을 발견하게 될 것이다."
- Max A. Lebow, Software Engineer, Unisys Corporation
기본정보
ISBN | 9788956743103 |
---|---|
발행(출시)일자 | 2006년 03월 29일 |
쪽수 | 589쪽 |
크기 |
188 * 254
mm
|
총권수 | 1권 |
Klover 리뷰 (0)
구매 후 리뷰 작성 시, e교환권 200원 적립
문장수집 (0)
e교환권은 적립 일로부터 180일 동안 사용 가능합니다. 리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 한 상품에 최초 1회만 제공됩니다.
주문취소/반품/절판/품절 시 리워드 대상에서 제외됩니다.
판매가 5,000원 미만 상품의 경우 리워드 지급 대상에서 제외됩니다. (2024년 9월 30일부터 적용)
구매 후 리뷰 작성 시, e교환권 100원 적립
-
반품/교환방법
* 오픈마켓, 해외배송 주문, 기프트 주문시 [1:1 상담>반품/교환/환불] 또는 고객센터 (1544-1900) -
반품/교환가능 기간
상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내 -
반품/교환비용
-
반품/교환 불가 사유
(단지 확인을 위한 포장 훼손은 제외)
2) 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
예) 화장품, 식품, 가전제품(악세서리 포함) 등
3) 복제가 가능한 상품 등의 포장을 훼손한 경우
예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
4) 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우 ((1)해외주문도서)
5) 디지털 컨텐츠인 ebook, 오디오북 등을 1회이상 ‘다운로드’를 받았거나 '바로보기'로 열람한 경우
6) 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
7) 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우
8) 세트상품 일부만 반품 불가 (필요시 세트상품 반품 후 낱권 재구매)
9) 기타 반품 불가 품목 - 잡지, 테이프, 대학입시자료, 사진집, 방통대 교재, 교과서, 만화, 미디어전품목, 악보집, 정부간행물, 지도, 각종 수험서, 적성검사자료, 성경, 사전, 법령집, 지류, 필기구류, 시즌상품, 개봉한 상품 등 -
상품 품절
-
소비자 피해보상 환불 지연에 따른 배상
2) 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리함
상품 설명에 반품/교환 관련한 안내가 있는 경우 그 내용을 우선으로 합니다. (업체 사정에 따라 달라질 수 있습니다.)