본문 바로가기

리디 접속이 원활하지 않습니다.
강제 새로 고침(Ctrl + F5)이나 브라우저 캐시 삭제를 진행해주세요.
계속해서 문제가 발생한다면 리디 접속 테스트를 통해 원인을 파악하고 대응 방법을 안내드리겠습니다.
테스트 페이지로 이동하기

자바 알고리즘 인터뷰 with 코틀린 상세페이지

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

자바 알고리즘 인터뷰 with 코틀린

102가지 알고리즘 문제 풀이로 완성하는 코딩 테스트
소장종이책 정가42,000
전자책 정가20%33,600
판매가33,600
자바 알고리즘 인터뷰 with 코틀린 표지 이미지

자바 알고리즘 인터뷰 with 코틀린작품 소개

<자바 알고리즘 인터뷰 with 코틀린>

V 취업 준비생과 이직자를 위한 알고리즘과 자료구조 완벽 학습 가이드!
V 102가지 리트코드/프로그래머스 기출 문제의 상세한 분석과 풀이 해설!

코딩 테스트와 알고리즘 인터뷰를 준비하는 개발자들을 위한 최고의 책 『파이썬 알고리즘 인터뷰』가 자바와 코틀린 코드로 무장하고 한층 업그레이드되어 돌아왔다! 이 책 한 권이면 취업이나 이직 준비는 물론, 현업에서도 바로 활용 가능한 실무 코드를 학습할 수 있는 기본기를 다질 수 있다. 200여 가지가 넘는 풍부한 일러스트를 통해 알고리즘과 자료구조의 기초도 다시 한번 탄탄히 다져보자.


출판사 서평

[이 책의 구성]

[1부] ‘코딩 인터뷰를 준비하며’
1장 ‘코딩 인터뷰 & 코딩 테스트’에서는 각각에 대한 소개와 어떻게 하면 시험을 잘 치를 수 있을지, 문제 풀이 외에도 타임아웃이나 예외 처리는 어떻게 처리해야 하는지, 문제를 잘 풀이하고 점수를 높이기 위한 여러 가지 팁과 함께 리트코드와 프로그래머스에서 문제를 풀이하는 방법을 담았다.

[2부] ‘자바 & 코틀린’
2장 ‘자바’에서는 코딩 테스트 풀이를 위한 언어로 자바를 택하고 세상에서 가장 유명한 언어인 자바의 상세한 특징과 동작 원리를 살펴본다. 3장 ‘코틀린’에서는 자바에 이어 다음번 대세가 될 것이 거의 확실해 보이는 코틀린의 특징과 동작 원리를 살펴본다. 4장 ‘자료형’에서는 자바에서 제공하는 자바 컬렉션 프레임워크를 비롯한 다양한 자료형을 살펴보며 코틀린에서도 어떻게 자바의 자료형을 그대로 사용할 수 있는지 원리와 구현 방식을 상세히 살펴본다. 5장 ‘빅오’에서는 빅오에 대한 정의와 특징을 살펴보고, 자바 컬렉션 프레임워크의 빅오에 대해서도 자세히 살펴본다. 6장 ‘문자열 처리’에서는 문자열과 관련한 주제를 살펴본다. 이 장부터 본격적으로 다양한 문제 풀이를 진행해본다.

[3부] ‘선형 자료구조’
7장 ‘배열’부터 8장 ‘연결 리스트’, 9장 ‘스택, 큐’, 10장 ‘데크, 우선순위 큐’, 11장 ‘해시 테이블’까지는 선형 자료구조와 관련한 다양한 주제를 살펴보고, 코딩 테스트 문제를 풀이해 본다.

[4부] ‘비선형 자료구조’
12장 ‘그래프’부터 13장 ‘최단 경로 문제’, 14장 ‘트리’, 15장 ‘힙’, 16장 ‘트라이’까지는 비선형 자료구조와 관련한 주제를 살펴보고, 코딩 테스트 문제를 풀이해 본다.

[5부] ‘알고리즘’
17장 ‘정렬’에서는 알고리즘의 꽃이라 불리우는 정렬의 다양한 알고리즘을 순서대로 하나씩 살펴본다. 18장 ‘이진 검색’, 19장 ‘비트 조작’, 20장 ‘슬라이딩 윈도우’에서는 관련한 알고리즘을 각각 살펴본다. 특히, 21장 ‘그리디 알고리즘’, 22장 ‘분할 정복’, 23장 ‘다이나믹 프로그래밍’은 각각 독립된 장이면서도 서로 연관되어 있는 주제이므로, 23장에서 내용을 최종 정리해 각각의 특징과 차이점을 상세히 살펴본다.

부록 ‘2022년 카카오 공채 만점 가이드’에서는 지금까지 살펴본 모든 알고리즘 역량을 총동원하여 실제로 2022년 카카오 개발자 신입 공채에 출제되었던 문제들을 최선의 방법으로 모두 풀이해 본다.

[이 책의 주요 특징]

- 자바에 익숙하지 않은 독자를 위해 자바의 실행 방식과 동작 원리, 고급 문법을 함께 설명한다.
- 코틀린에 익숙하지 않은 독자를 위해 자바와 코틀린의 차이점, 코틀린만의 장점과 여러 가지 팁을 함께 소개한다.
- 알고리즘을 이해하기 어려워하는 독자를 위해 알고리즘에 대한 다양한 시각화 일러스트를 곁들였다.
- 문제 풀이에 익숙하지 않은 독자를 위해 다양한 형태의 문제를 여러 가지 방법으로 풀이해 본다.
- 최적화에 대한 이해도가 낮은 독자를 위해 여러 가지 최적화 기법을 소개하고 성능을 측정, 비교해본다.

[이 책의 독자 대상]

이 책은 ‘국내 최고 수준 IT 기업에 취업을 희망하는 신입 개발자’ 눈높이에 맞춰 집필했다.

- 어떻게 하면 자바를 잘 다룰 수 있을까?
- 어떻게 하면 코틀린을 잘 익힐 수 있을까?
- 어떻게 하면 코딩 테스트를 잘 치를 수 있을까?
- 어떻게 하면 알고리즘 문제를 잘 풀이할 수 있을까?
- 어떻게 하면 면접을 잘 볼 수 있을까?

이 책을 읽는 독자는 하나 이상의 언어로 프로그래밍해본 경험이 있어야 하며, 기본적인 자료구조와 알고리즘에 대해 공부할 준비가 되어 있어야 한다. 자바를 잘 몰라도 이 책을 볼 수는 있지만, 가능하면 자바에 대한 기본 지식을 갖춘 상태에서 책을 읽는 편이 내용을 이해하는 데 훨씬 더 도움이 될 것이다.

| 이 책의 개발 언어와 도구 |
- 자바 11(필수)
- 코틀린 1.3(필수)
- 인텔리제이 커뮤니티 에디션(권장)
- 리트코드(필수)
- 프로그래머스(필수)

| 깃허브 소스코드 다운로드 |
이 책에서 소개하는 모든 문제 풀이에 사용된 코드는 깃허브를 통해 제공되며, 다음의 깃허브 주소에서 모든 문제의 풀이 코드를 다운로드할 수 있다.
- https://github.com/onlybooks/java-algorithm-interview

[추천의 글]

흔히들 개발자에게 알고리즘은 실무 개발과는 동떨어진 주제라고 여겨진다. 특별한 목적을 위해 알고리즘을 직접 만들거나 전문적으로 활용하는 소수의 개발자를 제외하고, 애플리케이션이라 불리는 다수의 사용자가 있는 IT 시스템을 개발하는 경우 알고리즘이란 말은 현장에서 거의 사용되지 않는 것처럼 보인다. 정렬이나 검색 같은 알고리즘이 필요하다면 잘 만들어진 라이브러리를 사용하거나 검색엔진처럼 그 기능에 최적화된 서비스를 사용하면 된다. 그래서 알고리즘은 취업이나 이직에서 요구되는 코딩 테스트나 인터뷰를 통과하기 위해 잠시 공부해야 하는 일회성 도구처럼 취급된다.

하지만 과연 그럴까? 자바의 가장 인기 있는 프레임워크인 스프링의 레퍼런스 문서와 소스 코드를 살펴보면 알고리즘이라는 단어가 상당히 많이 등장한다. 대표적인 스프링 기술인 스프링 MVC의 핵심인 DispatcherServlet 클래스는 웹 요청을 처리하기 위한 공통의 알고리즘을 제공하는 책임을 갖는다고 공식 문서에 소개돼 있다. 이 외에도, 의존성 주입DI에 관한 문서를 보면 스프링이 의존 오브젝트를 찾아서 생성자로 주입해줄 때 사용하는 알고리즘에 대한 설명이 나온다. 아울러 스프링 테스트에서 DataSource를 찾는 방법도 알고리즘으로 이야기한다. 이렇게 스프링의 기술을 잘 이해하기 위해서는 스프링의 각 기술에 적용된 알고리즘을 이해하는 것이 필수다. 결국 스프링을 사용하는 개발자라면 누구보다도 알고리즘과 매우 긴밀하게 일을 하고 있는 셈이다.

더욱이, 기술을 이해하고 사용하는 데만 알고리즘이 필요한 게 아니다. 애플리케이션의 로직을 담은 컴포넌트와 코드를 작성하는 것 또한 사실상 알고리즘을 만들고 구현하는 과정이다. 스프링의 빈bean 컴포넌트 사이의 의존 관계 주입은 디자인 패턴 중 전략 패턴으로 설명된다. 스프링의 핵심은 런타임에 사용할 의존 오브젝트를 자유롭게 변경함으로써 유연하지만 견고한 애플리케이션을 개발하는 것이다. 전략 패턴은 런타임에 알고리즘을 자유롭게 교체할 수 있게 해주는 디자인 패턴이다. 그러니까 스프링은 결국 비즈니스 로직을 담은 알고리즘을 유연하게 확장하고, 교체하고, 합성해서 애플리케이션을 만들게 해주는 도구인 셈이다. 따라서 스프링 개발자라면 날마다 알고리즘을 설계하고 이를 조합해서 시스템을 만든다고 봐도 무방하다.

물론 알고리즘 인터뷰에 자주 등장하는 유명 알고리즘과 현장에서 다양한 도메인의 문제를 풀기 위해 매일 설계하고 구현해야 하는 알고리즘은 흡사 다르게 보이기도 한다. 그래도 결국 코드로 구현 가능한, 문제를 해결하는 방법과 절차라는 점에서는 유사하다. 문제를 해결할 때 시간과 공간을 어떻게 활용하는지에 주의를 기울여야 한다는 점도 비슷하다. 많은 양의 데이터를 적합한 자료구조에 담아 애플리케이션으로 가져와서 최적화된 메모리를 사용하면서 빠른 시간 내에 결과를 만들어내도록 실전 알고리즘을 구상하고 코드로 구현해내는 것이 급격하게 성장하고 꾸준히 복잡해지는 오늘날 서비스 개발자에게 요구되는 중요한 실력임이 분명하다.

개발자라면 알고리즘의 기초를 익혀야 하며, 자신이 사용하는 도구의 근간이 되는 프로그래밍 언어의 특징을 잘 파악하고 활용할 수 있는 훈련이 필요한데, 이 책 『자바 알고리즘 인터뷰 with 코틀린』은 그 점에서 탁월하다. 2장부터 이어지는 자바, 코틀린, 자료형에 관한 설명은 언어라는 도구를 최적의 알고리즘을 만들려면 어디까지 들여다보고 실험해야 하는지 모범을 보여준다. 자바와 코틀린을 태생부터 관심을 갖고 사용해왔던 나조차 미처 생각해보지 않은 영역까지 탐험하고 이를 바탕으로 이후 알고리즘을 전개하는 내용에선 감탄을 금하지 않을 수 없었다.

알고리즘 대회나 인터뷰를 위한 서적이나 자료를 훑다 보면 요즘 개발자들이 관심을 많이 갖는 클린 코드 관점에서 아쉬움이 느껴지는 코드를 많이 만나게 된다. 제한된 시간에 답을 내기만 하면 코드는 어떻게 만들고 구성해도 상관없다는 오해를 주면 어쩌나 하는 걱정이 들기도 한다. 그런데 이 책의 알고리즘 풀이 예제를 보면 간단한 구조이지만 적절한 모듈 분리, 의미 있는 네이밍, 읽고 이해하기 좋게 코드를 만들려는 저자의 강한 의지가 느껴진다. 이 책에 ‘실무’라는 단어가 얼마나 자주 등장하는지를 살펴본다면 이 책이 단순히 코딩 테스트 준비만을 위한 책 이상임을 알게 될 것이다.

당장 코딩 테스트와 인터뷰에서 필요한 지식을 쌓고 훈련을 하기에 좋을 뿐만 아니라, 이후에 애플리케이션을 만들 때 문제를 해결하는 가장 좋은 방법을 찾으려는 수고의 가치와 결과가 무엇인지 잊지 않게 해줄 수 있는 이 책은 개발자의 좋은 길잡이이자 동반자가 되어줄 것이다.
- 이일민 / 이프릴 대표, 『토비의 스프링』 저자

[베타리더 한마디]

언뜻 보면 이 책은 저자의 유명한 전작인 『파이썬 알고리즘 인터뷰』를 단순히 자바 버전으로 출간한 듯 보이지만, 전혀 새로운 콘셉트의 책이라 할 수 있다. 이 책에 실린 실습 예제는 자바와 코틀린으로 제공되는데 이렇게 두 가지 언어로 함께 제공하는 것이 이 책의 가장 큰 장점이자, 또 다른 재미를 안겨준다. 아울러 이 책에서는 파이썬 코드 구현 의견도 제시해주기 때문에 알고리즘을 구현할 때 세 가지 언어를 비교하며 설명해주는 점이 더욱 흥미로웠다. 또한 전반적인 알고리즘 설명 외에도 특히, 왜 알고리즘을 사용해야 하는지, 실제 업무에서는 어떻게 활용해야 하는지 등 평소 고민했던 부분에 큰 도움을 받았다.
- 박찬웅 / 소프트웨어 개발자

기업은 개발자를 뽑을 때 일차적인 검증 수단으로 코딩 테스트를 봅니다. 이 책은 리트코드 문제를 선별해 출제자의 의도와 문제 해결 방법을 엿볼 수 있습니다. 알고리즘 개념 정리가 필요하거나 자바와 코틀린 언어로 코딩 테스트를 준비하는 분에게 이 책을 추천합니다.
- 오동주 / 안드로이드 개발자

이 책을 전작의 개정판으로 생각할 수도 있지만, 전혀 다른 언어인 자바를 사용하기에 다른 책이라고 봐도 좋다고 생각합니다. 파이썬을 공부하면서 전작을 읽었고 많은 도움을 받았습니다. 꼭 코딩 테스트를 위해서가 아니라 자바나 코틀린을 처음 접하는 책으로도 좋다고 생각합니다.
- 이상우 / 카카오, 톡메시징파트 개발자

신입 개발자를 위한 필수 자료구조 책을 소개합니다. (제가 아는 한) 코틀린을 통해 코딩 인터뷰/테스트를 다루는 첫 번째 책이기도 합니다. 필수적인 기본 자료구조뿐만 아니라 그리디 알고리즘이나 다이나믹 프로그래밍 같은 고급 주제까지 다루기에 폭넓은 주제를 공부할 수 있습니다.
- 정현준 / AtlasLabs, VP of Engineering

취미 삼아 해커랭크라는 사이트에서 C++와 파이썬으로 종종 문제를 풀었지만, 항상 풀이해 설에 대한 갈망을 느끼며 좀 더 나은 알고리즘은 없는지 늘 궁금했다. 이 책에서는 평소에 등산로를 결정하는 일처럼 우리 앞에 놓여 있는 여러 가지 선택지 중 왜 이런 선택(문제 풀이 방법)을 하게 되었는지에 대한 식견은 물론, 자바와 코틀린 소스 코드를 동시에 보여준다. 이 책을 베타리딩하며 그간 내가 느껴왔던 갈증을 풀어줄 책임을 확신했다. 아니 나뿐만이 아니라 이 책을 읽는 많은 이들이 이 말에 동감하지 않을까?
- 채민석 / integrate.io, APAC 담당 세일즈엔지니어

『파이썬 알고리즘 인터뷰』를 읽으면서 내용이 너무 좋아서 ‘언젠가 내게 더 익숙한 자바/코 틀린 기반으로 책이 나오면 얼마나 좋을까?’라는 생각을 했었는데, 정말로 나왔군요! 베타 리더로 참여하면서 읽어봤는데, 코딩 인터뷰 관련 책을 이보다 잘 쓸 수 있을까 싶을 정도로 너무 잘 쓰인 책입니다.
- 홍수영 / LINE, 서버사이드 소프트웨어 엔지니어


저자 소개

현대자동차의 인공지능 연구조직에서 기술 리더를 담당했으며, 이전에는 카카오에서 챗봇을, 다음커뮤니케이션에서 검색엔진을 만들며 검색에서 빅데이터, 인공지능으로 이어지는 인공지능 기술을 두루 경험했다. 지금은 현대자동차그룹의 글로벌 소프트웨어 센터인 포티투닷에서 초거대 언어 모델을 연구하고 있다. 카카오 개발자 공채 담당 위원이었으며, 현대 자동차에서도 소프트웨어 전문가 채용을 담당하는 TFT에서 활동했다. 『파이썬 알고리즘 인터뷰』(책만, 2020), 『비전공자도 이해할 수 있는 AI 지식』(반니, 2022)을 집필했다.

목차

[1부] 코딩 인터뷰를 준비하며

1장 코딩 인터뷰 & 코딩 테스트
기업 인재 등용의 관문, 코딩 인터뷰
__코딩 인터뷰와 국내외 기업들의 평가 기준
__국내 기업들의 코딩 테스트 플랫폼 활용 현황
온라인 코딩 테스트의 사전 준비 사항
__연습장과 필기 도구
__어떤 프로그래밍 언어가 유리할까
__자신만의 코드 스니펫 준비
__모든 테스트 케이스를 통과하도록 풀어야 한다
__타임아웃이 발생하는 경우
__예외 처리를 잊지 말자
__잘못 접근한 풀이, 어떻게 대처할까
__코딩 도구가 필요할까
__IDE에 부정적인 면접관이 있다면
__REPL 도구로 코드를 검증하자
온라인 코딩 테스트 플랫폼의 특징과 활용
__리트코드
__프로그래머스

[2부] 자바 & 코틀린

2장 자바, 세상에서 가장 유명한 언어
자바의 역사
자바의 주요 특징
__객체 지향 프로그래밍 언어
__함수형 프로그래밍 언어
자바의 도구
__즉시 실행 가능한 JShell
__자바는 어떻게 빌드하고 어떻게 실행할까
JVM 기반 언어의 등장

3장 코틀린, 구글이 인정한 공식 언어
코틀린의 주요 특징
__실용성
__상호운용성
__안전성
__우아함
코틀린의 기본 문법
__깔끔한 for 반복문
__정갈한 when 조건문
__편리한 함수 선언
__함수형 프로그래밍 언어
__가시성 제어자
__확장 함수
코틀린은 어떻게 빌드하고 어떻게 실행할까
__코틀린은 과연 느릴까

4장 자료형
자바는 어떤 자료형을 제공할까
__원시 자료형
__참조 자료형
__원시 자료형과 참조 자료형의 속도 비교
자바 컬렉션 프레임워크의 등장
__가장 자주 쓰게 될 리스트
__가장 유용하게 쓰게 될 맵
초기 자료형의 성능 문제
무한대 크기의 숫자를 저장할 수 있는 자료형
코틀린은 어떤 자료형을 제공할까
__코틀린 자료형의 속도는 과연 빠를까
코틀린은 컬렉션 프레임워크를 어떻게 구현했을까
__클래스의 기능을 확장하는 코틀린의 확장 함수
__코틀린이 별도로 구현한 컬렉션 인터페이스
자바 컬렉션 프레임워크의 실행 속도

5장 빅오
빅오
__n2과 2n의 비교
__빅오를 계산하는 실용적인 방법
__상한과 최악
__분할 상환 분석
__병렬화
__복잡도의 특징
자바 컬렉션 프레임워크의 빅오
__리스트 시간 복잡도
__맵 시간 복잡도
데크 시간 복잡도

6장 문자열 처리
[문제01] 유효한 팰린드롬
[문제02] 문자열 뒤집기
[문제03] 로그 파일 재정렬
[문제04] 가장 흔한 단어
[문제05] 그룹 애너그램
[문제06] 가장 긴 팰린드롬 부분 문자열

[3부] 선형 자료구조

7장 배열
동적 배열
[문제07] 두 수의 합
[문제08] 빗물 트래핑
[문제09] 세 수의 합
[문제10] 배열 파티션 I
[문제11] 자신을 제외한 배열의 곱
[문제12] 주식을 사고팔기 가장 좋은 시점

8장 연결 리스트
[문제13] 팰린드롬 연결 리스트
[문제14] 두 정렬 리스트의 병합
[문제15] 역순 연결 리스트
[문제16] 두 수의 덧셈
[문제17] 페어의 노드 스왑
[문제18] 홀짝 연결 리스트
[문제19] 역순 연결 리스트 II

9장 스택, 큐
스택

자바에서 활용하기
__자바의 큐 선언
__자바의 스택 선언
__스레드 안전이 필요한 경우
[문제20] 유효한 괄호
[문제21] 중복 문자 제거
[문제22] 일일 온도
[문제23] 큐를 이용한 스택 구현
[문제24] 스택을 이용한 큐 구현
[문제25] 원형 큐 디자인

10장 데크, 우선순위 큐
데크
[문제26] 원형 데크 디자인
우선순위 큐
[문제27] k개 정렬 리스트 병합
[문제28] 원점에서 가장 가까운 k개의 점
[문제29] 더 맵게

11장 해시 테이블
해시
__생일 문제
__비둘기집 원리
__로드 팩터
__해시 함수
충돌
__개별 체이닝
__오픈 어드레싱
__언어별 해시 테이블 구현 방식
[문제30] 해시맵 디자인
[문제31] 보석과 돌
[문제32] 중복 문자 없는 가장 긴 부분 문자열
[문제33] 상위 k 빈도 엘리먼트
[문제34] 완주하지 못한 선수

[4부] 비선형 자료구조

12장 그래프
오일러 경로
해밀턴 경로
그래프 순회
__DFS(깊이 우선 탐색)
__BFS(너비 우선 탐색)
백트래킹
제약 충족 문제
[문제35] 섬의 개수
[문제36] 전화번호 문자 조합
[문제37] 순열
[문제38] 조합
[문제39] 조합의 합
[문제40] 부분집합
[문제41] 일정 재구성
[문제42] 여행 경로
[문제43] 코스 일정

13장 최단 경로 문제
[문제44] 네트워크 딜레이 타임
[문제45] k 경유지 내 가장 저렴한 항공권
[문제46] 게임 맵 최단 거리

14장 트리
트리의 각 명칭
그래프와 트리의 차이점
이진 트리
[문제47] 이진 트리의 최대 깊이
[문제48] 이진 트리의 직경
[문제49] 가장 긴 동일 값의 경로
[문제50] 이진 트리 반전
[문제51] 두 이진 트리 병합
[문제52] 이진 트리 직렬화 & 역직렬화
[문제53] 균형 이진 트리
[문제54] 최소 높이 트리
이진 탐색 트리(BST)
__자가 균형 이진 탐색 트리
[문제55] 정렬된 배열의 이진 탐색 트리 변환
[문제56] 이진 탐색 트리(BST)를 더 큰 수 합계 트리로
[문제57] 이진 탐색 트리(BST) 합의 범위
[문제58] 이진 탐색 트리(BST) 노드 간 최솟값
트리 순회
__전위 순회
__중위 순회
__후위 순회
[문제59] 전위, 중위 순회 결과로 이진 트리 구축

15장 힙
힙 연산
__삽입
__추출
[문제60] 배열의 k번째 큰 엘리먼트
[문제61] 이중 우선순위 큐

16장 트라이
[문제62] 트라이 구현
[문제63] 팰린드롬 페어

[5부] 알고리즘

17장 정렬
버블 정렬
삽입 정렬
병합 정렬
퀵 정렬
안정 정렬과 불안정 정렬
[문제64] 리스트 정렬
[문제65] 구간 병합
[문제66] 삽입 정렬 리스트
[문제67] 가장 큰 수
[문제68] 유효한 애너그램
[문제69] 색 정렬

18장 이진 검색
[문제70] 이진 검색
[문제71] 회전 정렬된 배열 검색
[문제72] 두 배열의 교집합
[문제73] 두 수의 합 II
[문제74] 2D 행렬 검색 II
[문제75] 입국심사

19장 비트 조작
부울 연산자
비트 연산자
비트 조작 퀴즈
__자릿수 제한 비트 연산
2의 보수
__2의 보수 숫자 표현
__비트 연산자 NOT
[문제76] 싱글 넘버
[문제77] 해밍 거리
[문제78] 두 정수의 합
[문제79] UTF-8 검증
[문제80] 1비트의 개수

20장 슬라이딩 윈도우
[문제81] 최대 슬라이딩 윈도우
[문제82] 부분 문자열이 포함된 최소 윈도우
[문제83] 가장 긴 반복 문자 대체

21장 그리디 알고리즘
배낭 문제
동전 바꾸기 문제
가장 큰 합
[문제84] 주식을 사고팔기 가장 좋은 시점 II
[문제85] 키에 따른 대기열 재구성
[문제86] 태스크 스케줄러
[문제87] 주유소
[문제88] 쿠키 부여

22장 분할 정복
[문제89] 과반수 엘리먼트
[문제90] 괄호를 삽입하는 여러 가지 방법

23장 다이나믹 프로그래밍
최적 부분 구조
중복된 하위 문제들
다이나믹 프로그래밍 방법론
__상향식
__하향식
[문제91] 피보나치 수
0-1 배낭 문제
[문제92] 최대 서브 배열
[문제93] 계단 오르기
[문제94] 집 도둑
[문제95] 도둑질

부록 2022년 카카오 공채 만점 가이드
[문제96] 신고 결과 받기
[문제97] k진수에서 소수 개수 구하기
[문제98] 주차 요금 계산
[문제99] 양궁대회
[문제100] 양과 늑대
[문제101] 파괴되지 않은 건물
[문제102] 사라지는 발판


리뷰

구매자 별점

0.0

점수비율
  • 5
  • 4
  • 3
  • 2
  • 1

0명이 평가함

리뷰 작성 영역

이 책을 평가해주세요!

내가 남긴 별점 0.0

별로예요

그저 그래요

보통이에요

좋아요

최고예요

별점 취소

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

'구매자' 표시는 리디에서 유료도서 결제 후 다운로드 하시거나 리디셀렉트 도서를 다운로드하신 경우에만 표시됩니다.

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

이 책과 함께 구매한 책


이 책과 함께 둘러본 책



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

spinner
앱으로 연결해서 다운로드하시겠습니까?
닫기 버튼
대여한 작품은 다운로드 시점부터 대여가 시작됩니다.
앱으로 연결해서 보시겠습니까?
닫기 버튼
앱이 설치되어 있지 않으면 앱 다운로드로 자동 연결됩니다.
모바일 버전