누구나 자료 구조와 알고리즘 개정2판(A Common-Sense Guide to Data Structures and Algorithms, 2nd Ed.)

출간일(Release) : 2021/12/01
종이책 출간일(Print Release) : 2021/11/30
전자책 종류(Format) : ePub
Price : KRW 26,400
미리보기(Preview)


ridi

google

yes24

kyobo

aladin

apple


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

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

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

It can be understood even without mathematical terms and technical terms.
Most of the books in this field are written for computer science majors or assume a good understanding of high school mathematics. Even a book that is easy to explain is full of technical terms. Non-majors or readers with weak mathematical foundations avoid the topic because they fear jargon and feel that they are not smart enough to understand the topic. However, most of the data structures and algorithms can be understood with common sense. Let’s try to understand data structures and algorithms with explanations that make sense with common sense within the range that can be understood intuitively without rigorous mathematical analysis.

Understand the core skills of programming
Data structures and algorithms are core skills in programming. Data structures and algorithms contain the mindset you must know to write faster, more efficient code. Instead of explaining only abstract concepts, it presents situations that can be encountered in real life and shows how to apply data structures and algorithms. It also shows that data structures and algorithms can be implemented in any language as long as the concepts are understood. This book provides examples in JavaScript, Ruby, and Python.

Learn how to choose data structures and algorithms
The major textbooks only memorize data structures and algorithms and take exams. In a job interview, you will be asked what kind of problem you should choose between an array, a linked list, or a hash, and why it is the best way to do it. It explains how to choose a data structure and how the selected data structure affects the performance of the code, so I teach connected knowledge rather than memorized piecemeal knowledge, and can refer to it when preparing for a job interview.


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

He is a professional educator and developer dedicated to teaching the world to code. He is the founder and CEO of Actualize, which teaches coding boot camps and hands-on training. He teaches coding online for an education company called “Anyone Can Learn To Code,” running a high school computer science curriculum, and corporate training.


부록(Extra File)

실전 대비 C 알고리즘 인터뷰(Problem solving in data structures & algorithm using C)

출간일(Release) : 2020/10/22
종이책 출간일(Print Release) : 2020/09/28
전자책 종류(Format) : ePub
Price : KRW 28,800
미리보기(Preview)


ridi

google

yes24

kyobo

aladin

apple


책소개(Overview)
효율적인 알고리즘 설계는 소프트웨어에서 아주 중요합니다. 그래서 모든 소프트웨어 회사의 코딩 인터뷰에서는 자료 구조와 알고리즘을 얼마나 아는지는 물론 지원자가 복잡한 문제를 자료 구조와 알고리즘을 이용해 어떻게 효율적으로 해결하는지를 살펴봅니다. 단지 아는 것을 넘어서 코딩 인터뷰에서 인정받고 소프트웨어 엔지니어로서 탁월한 능력을 발휘하려면 자료 구조와 알고리즘을 자유자재로 구사해야 합니다.

이 책은 코딩 인터뷰를 준비하는 사람을 대상으로 합니다. 앞부분에서는 여러 가지 자료 구조와 알고리즘에 대한 복잡도를 분석하고 뒷부분에서는 다양한 알고리즘 기법을 다룹니다. 또한, 각 주제에 맞춰 문제와 해결책을 제시하며, 연습 문제를 통해 완전히 이해하고 있는지 확인하게 합니다. 이 책은 C 언어로 해결책을 제시하지만, C 언어가 친숙하지 않더라도 구조체, 함수, 배열, 포인터, 재귀의 개념을 안다면 읽는 데 무리가 없습니다.

Efficient algorithm design is very important in software. So, coding interviews for all software companies look at how well you know data structures and algorithms, as well as how candidates can efficiently solve complex problems using data structures and algorithms. To be recognized in coding interviews and excellence as a software engineer, you need to use data structures and algorithms freely.

This book is for anyone preparing for a coding interview. The first part analyzes the complexity of various data structures and algorithms, and the latter part covers various algorithmic techniques. It also presents problems and solutions for each topic, and exercises to ensure that you fully understand it. This book offers solutions in C, but even if you’re not familiar with C, it’s easy to read if you know the concepts of structures, functions, arrays, pointers, and recursion.


저자(Author)
헤먼 자인(Hemant Jain)
C/C++ 애플리케이션 개발자로, IIIT-Allahabad에서 정보 기술 분야 학사 학위를 받았으며 인도 Microsoft R&D와 인도 Adobe Systems에서 근무했습니다.

The author is a C/C++ application developer, holds a bachelor’s degree in information technology from IIIT-Allahabad, has worked for Microsoft R&D in India and Adobe Systems in India.


부록(Extra File)

모두의 알고리즘 with 파이썬(Algorithms for everyone with python)

출간일(Release) : 2017/06/22
종이책 출간일(Print Release) : 2017/05/18
전자책 종류(Format) : ePub
Price : KRW 11,200
미리보기(Preview)


ridi

google

yes24

kyobo

aladin

tstore

apple


책소개(Overview)
누구나 알고리즘으로 논리적 사고를 키울 수 있다!

◆ 준비: 학습에 필요한 내용 준비하기
알고리즘이 무엇인지 정의를 살펴보고 학습에 필요한 파이썬 프로그래밍 언어를 준비합니다.

◆ 기초: 기초 알고리즘 배우기
합 구하기, 최댓값 찾기, 재귀 호출, 이분 탐색, 정렬, 큐와 스택 등 핵심을 배우고 열다섯 가지 알고리즘 문제를 풀어 봅니다. 문제를 분석하고 해결하면서 논리적 사고를 기를 수 있습니다.

◆ 응용: 배운 알고리즘 응용하기
앞에서 배운 기초 알고리즘을 사용해서 응용문제를 풀어 봅니다. 미로 찾기, 가짜 동전 찾기, 최대 수익 구하기 등 실생활에서 만날 수 있는 문제를 다룹니다.

Anyone can develop logical thinking with algorithms!

◆ Preparation: Prepare contents for learning
Look at the definition of what the algorithm is and prepare the Python programming language for learning.

◆ Basics: Learning basic algorithms
Learn the key points such as summing, finding maximal, recursive calling, two-way search, sorting, cueing and stacking, and solve fifteen algorithmic problems. You can develop logical thinking while analyzing and solving problems.

◆ Application: Application of learned algorithm
Let’s solve the application problem using the basic algorithm we learned earlier. Finding mazes, finding fake coins, getting the maximum return, and so on.


저자(Author)
이승찬(Lee, Seungchan)
서울대학교에서 컴퓨터공학을 전공하고 게임 개발자로 일하며 메이플스토리 등의 히트 게임을 만들었습니다. 15년간 일한 게임 업계를 떠나 University of Washington에서 경영학 석사 학위를 받은 후 한동안 멀리했던 컴퓨터 프로그래밍을 다시 공부하며 프로그래머로 즐거운 시간을 보내고 있습니다.

Seungchan Lee majored in computer engineering at Seoul National University, worked as a game developer, and created a hit game such as MapleStory. The author has been working as a programmer for 15 years after leaving the game industry and studying computer programming for a while after receiving his master’s degree in business administration from the University of Washington.


부록(Extra File)