확장메뉴
주요메뉴


공유하기
중고도서

코딩인터뷰 완전분석

: 189가지 프로그래밍 문제와 해법

정가
45,000
중고판매가
29,500 (34% 할인)
상태?
최상 새 상품같이 깨끗한 상품
YES포인트
구매 시 참고사항
  • 중고샵 판매자가 직접 등록/판매하는 상품으로 판매자가 해당 상품과 내용에 모든 책임을 집니다.

[중고샵] 매장ON! 매장 배송 온라인 중고 서비스
[중고샵] 판매자 배송 중고 추천 인기샵 특별전
[중고샵] 매장ON! 대구물류편: 버뮤다대구지대
쇼핑혜택
현대카드
1 2 3 4 5

품목정보

품목정보
출간일 2017년 08월 14일
쪽수, 무게, 크기 904쪽 | 1720g | 188*240*40mm
ISBN13 9788966263080
ISBN10 8966263089

중고도서 소개

최상 새 상품같이 깨끗한 상품
  •  판매자 :   stardino2   평점4점
  •  사두고 거의 보지않아 깨끗한 책입니다
  •  특이사항 : 사두고 거의 보지않아 깨끗한 책입니다

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

아마존에서 가장 많이 팔리는 프로그래밍 면접 책

이 책의 저자는 구인 담당자가 아니라 소프트웨어 엔지니어다. 지원자로서도 면접관으로서도 코딩 면접을 겪어 본 적이 있기 때문에 지원자가 면접을 앞두고 무엇을 준비해야 하는지 잘 알고 있다. 수백 명의 소프트웨어 엔지니어를 가르치고 인터뷰해 온 결과물이 바로 이 책이다.

문제의 힌트와 숨겨진 부분을 발견하는 방법, 큰 문제를 다루기 쉽게 작게 쪼개는 법, 문제를 풀다 막혔을 때 막힌 부분을 풀어가는 기술, 컴퓨터 과학의 핵심 개념을 배운다. 189개의 면접 문제와 그 해법을 통해 연습할 수 있다.

이 책에는 면접에서 실제로 출시되었던 문제만 실었다. 최고의 회사들이 면접에서 하는 질문을 반영하여 실제 면접과 비슷하게 준비할 수 있을 것이다.

어떤 내용이 담겨 있나?
- 쉬운 문제부터 까다로운 알고리즘 문제까지, 189가지 프로그래밍 면접 질문을 담았다.
- 문제 풀이 과정을 단계별로 차근차근 보여줘 어떤 문제든 스스로 풀 수 있게 한다.
- 실제 면접에서 면접관이 알려줄 법한 힌트를 모든 문제마다 제시한다.
- 알고리즘 문제를 푸는 다섯 가지 전략을 제시해 처음 보는 문제도 풀 수 있도록 한다.
- big-O 시간, 자료구조, 핵심 알고리즘과 같은 필수 주제를 광범위하게 다룬다.
- 구글, 페이스북 같은 최고의 회사들이 개발자를 어떻게 채용하는지 살펴본다.
- 행동 면접을 다루어 기술 외적인 부분을 통해 에이스로 등극할 수 있는 방법을 알아본다.
- 면접관과 회사를 위한 좋은 면접의 요건, 채용 과정의 세부적인 정보를 다룬다.


목차 목차 보이기/감추기

I. 면접 과정
__면접의 방식은 왜 이래야 하는가
__어떤 문제를 출제하는가
__모든 것은 상대적이다
__자주 받는 질문

II. 장막 너머
__마이크로소프트 면접
__아마존 면접
__구글 면접
__애플 면접
__페이스북 면접
__팰런티어 면접

III. 특별한 상황에서의 면접
__경력자
__테스터 혹은 SDET
__PM
__개발 책임자와 관리자
__스타트업
__기업 인수 및 인재 영입
__면접관의 입장

IV. 면접 전에
__적절한 경험 쌓기
__탄탄한 이력서 작성하기
__준비 절차

V. 행동 문제
__대비 요령
__기술적 프로젝트에 대한 이해
__행동 질문에 대한 대처 요령
__그러니까, 당신에 대해 말해보세요

VI. big-O
__비유하기
__시간 복잡도
__공간 복잡도
__상수항은 무시하라
__지배적이지 않은 항은 무시하라
__여러 부분으로 이루어진 알고리즘: 덧셈 vs. 곱셈
__상환 시간
__log N 수행 시간
__재귀적으로 수행 시간 구하기
__예제 및 연습 문제

VII. 기술적 문제
__준비하기
__알고 있어야 할 것들
__실제 문제 살펴보기
__최적화 및 문제풀이 기술 #1: BUD를 찾으라
__최적화 및 문제풀이 기술 #2: 스스로 풀어보라 DIY(Do It Yourself)
__최적화 및 문제풀이 기술 #3: 단순화, 일반화하라
__최적화 및 문제풀이 기술 #4: 초기 사례(base case)로부터 확장하기(build)
__최적화 및 문제풀이 기술 #5: 자료구조 브레인스토밍
__가능한 최선의 수행 시간(Best Conceivable Runtime(BCR))
__오답에 대한 대처법
__알고 있던 문제가 면접에 나왔을 때
__면접용으로 ‘완벽한’ 언어
__어떤 코드가 좋아 보이나
__포기하지 말라

VIII. 합격한 뒤에
__합격 또는 거절 통지에 대처하는 요령
__입사 제안 평가
__연봉 협상
__입사 후

IX. 면접 문제
자료구조
01 배열과 문자열
__해시테이블
__ArrayList와 가변 크기 배열
__StringBuilder
__면접 문제
02 연결리스트
__연결리스트 만들기
__단방향 연결리스트에서 노드 삭제
__Runner 기법
__재귀 문제
__면접 문제
03 스택과 큐
__스택 구현하기
__큐 구현하기
__면접 문제
04 트리와 그래프
__트리의 종류
__이진 트리 순회
__이진 힙(최소힙과 최대힙)
__트라이(접두사 트리)
__그래프
__면접 문제

개념과 알고리즘
05 비트 조작
__손으로 비트 조작 해보기
__비트 조작을 할 때 알아야 할 사실들과 트릭들
__2의 보수와 음수
__산술 우측 시프트 vs. 논리 우측 시프트
__기본적인 비트 조작: 비트값 확인 및 채워넣기
__면접 문제
06 수학 및 논리 퍼즐
__소수
__확률
__입을 열라
__규칙과 패턴을 찾으라
__최악의 경우는?
__알고리즘적 접근법
__면접 문제
07 객체 지향 설계
__접근법
__디자인 패턴
__면접 문제
08 재귀와 동적 프로그래밍
__접근법
__재귀적 해법 vs. 순환적 해법
__동적계획법 & 메모이제이션
__면접 문제
09 시스템 설계 및 규모 확장성
__문제를 다루는 방법
__시스템 설계: 단계별 접근법
__규모 확장을 위한 알고리즘: 단계별 접근법
__시스템 설계의 핵심 개념
__데이터베이스 분할(샤딩)
__시스템 설계 시 고려할 점
__ ‘완벽한’ 시스템은 없다
__연습 문제
__면접 문제
10 정렬과 탐색
__널리 사용되는 정렬 알고리즘
__면접 문제
11 테스팅
__면접관이 평가하는 것
__실제 세계에서 객체 테스트하기
__소프트웨어 테스팅
__함수 테스트
__문제 해결에 관한 문제
__면접 문제

지식 기반 문제
12 C와 C++
__클래스와 상속
__생성자와 소멸자
__가상 함수
__가상 소멸자
__기본값
__연산자 오버로딩
__포인터와 참조
__템플릿
__면접 문제
13 자바
__언어 자체 질문에 대한 접근법
__오버로딩 vs. 오버라이딩
__컬렉션 프레임워크
__면접 문제
14 데이터베이스
__SQL 문법과 그 변종들
__비정규화 vs. 정규화 데이터베이스
__SQL 문
__소규모 데이터베이스 설계
__대규모 데이터베이스 설계
__면접 문제
15 스레드와 락
__자바의 스레드
__동기화와 락
__교착상태와 교착상태 방지
__면접 문제

추가 연습문제
16 중간 난이도 연습문제
17 어려운 연습문제

X. 해법
자료구조
01 배열과 문자열 해법
02 연결리스트 해법
03 스택과 큐 해법
04 트리와 그래프 해법

개념과 알고리즘
05 비트 조작 해법
06 수학 및 논리 퍼즐 해법
07 객체 지향 설계 해법
08 재귀와 동적 프로그래밍 해법
09 시스템 설계 및 규모 확장성 해법
10 정렬과 탐색 해법
11 테스팅 해법

지식 기반
12 C와 C++ 해법
13 자바 해법
14 데이터베이스 해법
15 스레드와 락 해법

추가 연습문제
16 중간 난이도 연습문제 해법
17 어려운 연습문제 해법

XI. 고급 주제
__유용한 수학
__위상정렬
__다익스트라 알고리즘
__해시테이블에서 충돌을 해결하는 방법
__선형 탐사법을 이용한 개방 주소법
__Rabin-Karp 부분 문자열 탐색 알고리즘
__AVL 트리
__레드-블랙 트리
__MapReduce
__추가 공부거리

XII. 코드 라이브러리
__HashMapList[T, E]
__TreeNode(이진 탐색 트리)
__LinkedListNode(연결리스트)
__Trie & TrieNode

XIII. 힌트
01 자료구조 힌트
02 개념 및 알고리즘 힌트
03 지식 기반 문제 힌트
04 추가 연습 문제 힌트


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

저자 : 게일 라크만 맥도웰 Gayle Laakmann McDowell
CareerCup의 창업자이자 Cracking the PM Interview와 Cracking the Tech Career의 저자이다. 구글, 마이크로소프트, 애플의 소프트웨어 엔지니어로 일하면서 소프트웨어 개발 경력을 쌓았다. 구글에서 일할 때는 수백 명의 소프트웨어 엔지니어를 면접 봤으며, 채용 위원회의 일원으로서 수천 명을 평가했다. 펜실베니아 대학에서 컴퓨터 과학 전공으로 학사와 석사 학위를 받았으며 와튼 스쿨에서 MBA를 받았다. 현재는 테크 회사의 채용 과정을 개선하기 위한 지문을 하거나 스타트업들의 인수 면접을 도와주는 일을 하기도 한다.


역자 : 이창현
연세대학교에서 컴퓨터 과학과를 졸업했다. 조지아텍에서 머신 러닝 및 데이터 시각화에 관한 연구로 석사 학위를 받았다. PS(Problem Solving)에 관심이 많아 ACM-ICPC, TOPCODER 등을 포함해 다양한 프로그래밍 대회에 참여했다. 현재는 구글 본사에서 소프트웨어 엔지니어로 일하고 있다.
  • 일시품절 상태입니다.
뒤로 앞으로 맨위로 aniAlarm