Dang-Khoa's bookshelf: algorithms en-US Sun, 27 Apr 2025 02:42:13 -0700 60 Dang-Khoa's bookshelf: algorithms 144 41 /images/layout/goodreads_logo_144.jpg <![CDATA[Algorithmic Thinking: A Problem-Based Introduction]]> 52555533
Algorithmic Thinking will teach you how to solve challenging programming problems and design your own algorithms. Daniel Zingaro, a master teacher, draws his examples from world-class programming competitions like USACO and IOI. You'll learn how to classify problems, choose data structures, and identify appropriate algorithms. You'll also learn how your choice of data structure, whether a hash table, heap, or tree, can affect runtime and speed up your algorithms; and how to adopt powerful strategies like recursion, dynamic programming, and binary search to solve challenging problems.

Line-by-line breakdowns of the code will teach you how to use algorithms and data structures

Each problem in this book is available on a programming-judge website. You'll find the site's URL and problem ID in the description. What's better than a free correctness check?]]>
408 Daniel Zingaro 1718500807 Dang-Khoa 0 algorithms, currently-reading 4.46 Algorithmic Thinking: A Problem-Based Introduction
author: Daniel Zingaro
name: Dang-Khoa
average rating: 4.46
book published:
rating: 0
read at:
date added: 2025/04/27
shelves: algorithms, currently-reading
review:

]]>
Recursion via Pascal 8692060 204 J.S. Rohl 0521269342 Dang-Khoa 0 algorithms, to-read 4.67 1984 Recursion via Pascal
author: J.S. Rohl
name: Dang-Khoa
average rating: 4.67
book published: 1984
rating: 0
read at:
date added: 2025/01/02
shelves: algorithms, to-read
review:

]]>
<![CDATA[Mining of Massive Datasets, Third Edition]]> 57213071 565 Jure Leskovec Dang-Khoa 0 3.86 2011 Mining of Massive Datasets, Third Edition
author: Jure Leskovec
name: Dang-Khoa
average rating: 3.86
book published: 2011
rating: 0
read at:
date added: 2025/01/01
shelves: textbooks, mlops, database, did-not-finish, algorithms
review:

]]>
<![CDATA[Data-Intensive Text Processing with MapReduce (Synthesis Lectures on Human Language Technologies, 7)]]> 8346166 178 Jimmy Lin 1608453421 Dang-Khoa 0 4.13 2010 Data-Intensive Text Processing with MapReduce (Synthesis Lectures on Human Language Technologies, 7)
author: Jimmy Lin
name: Dang-Khoa
average rating: 4.13
book published: 2010
rating: 0
read at:
date added: 2025/01/01
shelves: algorithms, did-not-finish, textbooks
review:

]]>
Programming Pearls 52084 "The first edition of Programming Pearls was one of the most influential books I read early in my career, and many of the insights I first encountered in that book stayed with me long after I read it. Jon has done a wonderful job of updating the material. I am very impressed at how fresh the new examples seem."
- Steve McConnell, author, Code Complete

When programmers list their favorite books, Jon Bentley's collection of programming pearls is commonly included among the classics. Just as natural pearls grow from grains of sand that irritate oysters, programming pearls have grown from real problems that have irritated real programmers. With origins beyond solid engineering, in the realm of insight and creativity, Bentley's pearls offer unique and clever solutions to those nagging problems. Illustrated by programs designed as much for fun as for instruction, the book is filled with lucid and witty descriptions of practical programming techniques and fundamental design principles. It is not at all surprising that Programming Pearls has been so highly valued by programmers at every level of experience.

In this revision, the first in 14 years, Bentley has substantially updated his essays to reflect current programming methods and environments. In addition, there are three new essays on (1) testing, debugging, and timing; (2) set representations; and (3) string problems. All the original programs have been rewritten, and an equal amount of new code has been generated. Implementations of all the programs, in C or C++, are now available on the Web.

What remains the same in this new edition is Bentley's focus on the hard core of programming problems and his delivery of workable solutions to those problems. Whether you are new to Bentley's classic or are revisiting his work for some fresh insight, this book is sure to make your own list of favorites.]]>
239 Jon L. Bentley 0201657880 Dang-Khoa 4 4.20 1986 Programming Pearls
author: Jon L. Bentley
name: Dang-Khoa
average rating: 4.20
book published: 1986
rating: 4
read at:
date added: 2024/01/07
shelves: programming, currently-reading, algorithms
review:

]]>
Introduction to Algorithms 108986 A comprehensive update of the leading algorithms text, with new material on matchings in bipartite graphs, online algorithms, machine learning, and other topics.

Some books on algorithms are rigorous but incomplete; others cover masses of material but lack rigor. Introduction to Algorithms uniquely combines rigor and comprehensiveness. It covers a broad range of algorithms in depth, yet makes their design and analysis accessible to all levels of readers, with self-contained chapters and algorithms in pseudocode. Since the publication of the first edition, Introduction to Algorithms has become the leading algorithms text in universities worldwide as well as the standard reference for professionals. This fourth edition has been updated throughout.

New for the fourth edition
New chapters on matchings in bipartite graphs, online algorithms, and machine learningNew material on topics including solving recurrence equations, hash tables, potential functions, and suffix arrays140 new exercises and 22 new problemsReader feedback-informed improvements to old problemsClearer, more personal, and gender-neutral writing styleColor added to improve visual presentationNotes, bibliography, and index updated to reflect developments in the fieldWebsite with new supplementary material
Warning: Avoid counterfeit copies of Introduction to Algorithms by buying only from reputable retailers. Counterfeit and pirated copies are incomplete and contain errors.]]>
1184 Thomas H. Cormen 0262032937 Dang-Khoa 5 4.35 1989 Introduction to Algorithms
author: Thomas H. Cormen
name: Dang-Khoa
average rating: 4.35
book published: 1989
rating: 5
read at:
date added: 2024/01/06
shelves: computer-science, algorithms, textbooks, to-read, streetfighting-computer-scientists
review:

]]>
<![CDATA[Data Structures and Algorithms]]> 112264 448 Alfred V. Aho 0201000237 Dang-Khoa 0 3.95 Data Structures and Algorithms
author: Alfred V. Aho
name: Dang-Khoa
average rating: 3.95
book published:
rating: 0
read at:
date added: 2024/01/06
shelves: to-read, textbooks, algorithms
review:

]]>
<![CDATA[Data Structures & Algorithm Analysis in C++]]> 14795544 As the speed and power of computers increases, so does the need for effective programming and algorithm analysis. By approaching these skills in tandem, Mark Allen Weiss teaches readers to develop well-constructed, maximally efficient programs using the C++ programming language. This book explains topics from binary heaps to sorting to NP -completeness, and dedicates a full chapter to amortized analysis and advanced data structures and their implementation. Figures and examples illustrating successive stages of algorithms contribute to Weiss� careful, rigorous and in-depth analysis of each type of algorithm.]]> 664 Mark Allen Weiss 013284737X Dang-Khoa 0 4.11 1993 Data Structures & Algorithm Analysis in C++
author: Mark Allen Weiss
name: Dang-Khoa
average rating: 4.11
book published: 1993
rating: 0
read at:
date added: 2024/01/01
shelves: algorithms, cpp-language, to-read
review:

]]>
Algorithmic Puzzles 10640251 The book's unique collection of puzzles is supplemented with carefully developed tutorials on algorithm design strategies and analysis techniques intended to walk the reader step-by-step through the various approaches to algorithmic problem solving. Mastery of these strategies--exhaustive search, backtracking, and divide-and-conquer, among others--will aid the reader in solving not only the puzzles contained in this book, but also others encountered in interviews, puzzle collections, and throughout everyday life. Each of the 150 puzzles contains hints and solutions, along with commentary on the puzzle's origins and solution methods.
The only book of its kind, Algorithmic Puzzles houses puzzles for all skill levels. Readers with only middle school mathematics will develop their algorithmic problem-solving skills through puzzles at the elementary level, while seasoned puzzle solvers will enjoy the challenge of thinking through more difficult puzzles.]]>
257 Anany V. Levitin 0199740445 Dang-Khoa 0 algorithms, toread-24 4.26 2011 Algorithmic Puzzles
author: Anany V. Levitin
name: Dang-Khoa
average rating: 4.26
book published: 2011
rating: 0
read at:
date added: 2023/12/07
shelves: algorithms, toread-24
review:

]]>
<![CDATA[Elements of Programming Interviews: The Insiders' Guide C++]]> 29731528
The content is identical.

Have you ever...




Wanted to work at an exciting futuristic company?
Struggled with an interview problem that could have been solved in 15 minutes?
Wished you could study real-world computing problems?
If so, you need to read Elements of Programming Interviews (EPI).

EPI is your comprehensive guide to interviewing for software development roles.

The core of EPI is a collection of over 250 problems with detailed solutions. The problems are representative of interview questions asked at leading software companies. The problems are illustrated with 200 figures, 300 tested programs, and 150 additional variants.

The book begins with a summary of the nontechnical aspects of interviewing, such as strategies for a great interview, common mistakes, perspectives from the other side of the table, tips on negotiating the best offer, and a guide to the best ways to use EPI. We also provide a summary of data structures, algorithms, and problem solving patterns.

Coding problems are presented through a series of chapters on basic and advanced data structures, searching, sorting, algorithm design principles, and concurrency. Each chapter stars with a brief introduction, a case study, top tips, and a review of the most important library methods. This is followed by a broad and thought-provoking set of problems.

A practical, fun approach to computer science fundamentals, as seen through the lens of common programming interview questions.
Jeff Atwood/Co-founder, Stack Overflow and Discourse]]>
484 Adnan Aziz 1530462983 Dang-Khoa 4 4.18 2012 Elements of Programming Interviews: The Insiders' Guide C++
author: Adnan Aziz
name: Dang-Khoa
average rating: 4.18
book published: 2012
rating: 4
read at:
date added: 2023/12/07
shelves: programming, algorithms, cpp-language
review:

]]>
Computer Algorithms 1686084 Ellis Horowitz 0716783169 Dang-Khoa 0 3.86 1997 Computer Algorithms
author: Ellis Horowitz
name: Dang-Khoa
average rating: 3.86
book published: 1997
rating: 0
read at:
date added: 2023/11/30
shelves: to-read, textbooks, algorithms
review:

]]>
<![CDATA[The Algorithm Design Manual (Texts in Computer Science)]]> 55357750 793 Steven S. Skiena 3030542556 Dang-Khoa 0 algorithms, currently-reading 4.38 1997 The Algorithm Design Manual (Texts in Computer Science)
author: Steven S. Skiena
name: Dang-Khoa
average rating: 4.38
book published: 1997
rating: 0
read at:
date added: 2023/08/26
shelves: algorithms, currently-reading
review:

]]>
<![CDATA[Art of Computer Programming, The: Combinatorial Algorithms, Volume 4A, Part 1]]> 9412211 912 Donald Ervin Knuth 0201038048 Dang-Khoa 0 4.51 2011 Art of Computer Programming, The: Combinatorial Algorithms, Volume 4A, Part 1
author: Donald Ervin Knuth
name: Dang-Khoa
average rating: 4.51
book published: 2011
rating: 0
read at:
date added: 2023/08/03
shelves: combinatorics, algorithms, computer-science, classic, programming, textbooks, discrete-maths, pause-atm
review:

]]>
<![CDATA[The Art of Computer Programming, Volume 2: Seminumerical Algorithms]]> 112246 Ebook (PDF version) produced by Mathematical Sciences Publishers (MSP),]]> 784 Donald Ervin Knuth 0201896842 Dang-Khoa 0 4.42 1969 The Art of Computer Programming, Volume 2: Seminumerical Algorithms
author: Donald Ervin Knuth
name: Dang-Khoa
average rating: 4.42
book published: 1969
rating: 0
read at:
date added: 2023/08/03
shelves: algorithms, textbooks, classic, pause-atm
review:

]]>
<![CDATA[Art of Computer Programming, The: Combinatorial Algorithms, Volume 4B]]> 35187732 The Art of Computer Programming is Knuth's multivolume analysis of algorithms. With the addition of this new volume, it continues to be the definitive description of classical computer science.

Volume 4B, the sequel to Volume 4A, extends Knuth's exploration of combinatorial algorithms. These algorithms are of keen interest to software designers because . . . a single good idea can save years or even centuries of computer time.

The book begins with coverage of Backtrack Programming, together with a set of data structures whose links perform delightful dances and are ideally suited to this domain. New techniques for important applications such as optimum partitioning and layout are thereby developed.

Knuth's writing is playful, and he includes dozens of puzzles to illustrate the algorithms and techniques, ranging from popular classics like edge-matching to more recent crazes like sudoku. Recreational mathematicians and computer scientists will not be disappointed!

In the second half of the book, Knuth addresses Satisfiability, one of the most fundamental problems in all of computer science. Innovative techniques developed at the beginning of the twenty-first century have led to game-changing applications, for such things as optimum scheduling, circuit design, and hardware verification. Thanks to these tools, computers are able to solve practical problems involving millions of variables that only a few years ago were regarded as hopeless.

The Mathematical Preliminaries Redux section of the book is a special treat, which presents basic techniques of probability theory that have become prominent since the original preliminaries were discussed in Volume 1.

As in every volume of this remarkable series, the book includes hundreds of exercises that employ Knuth's ingenious rating system, making it easy for readers of varying degrees of mathematical training to find challenges suitable to them. Detailed answers are provided to facilitate self-study.

Professor Donald E. Knuth has always loved to solve problems. In Volume 4B he now promotes two brand new and practical general problem solvers, namely (0) the Dancing Links Backtracking and (1) the SAT Solver. To use them, a problem is defined declaratively (0) as a set of options, or (1) in Boolean formulae. Today's laptop computers, heavily armoured with very high speed processors and ultra large amounts of memory, are able to run either solver for problems having big input data. Each section of Volume 4B contains a multitudinous number of tough exercises which help make understanding surer. Happy reading! --Eiiti Wada, an elder computer scientist, UTokyo

Donald Knuth may very well be a great master of the analysis of algorithms, but more than that, he is an incredible and tireless storyteller who always strikes the perfect balance between theory, practice, and fun. [Volume 4B, Combinatorial Algorithms, Part 2] dives deep into the fascinating exploration of search spaces (which is quite like looking for a needle in a haystack or, even harder, to prove the absence of a needle in a haystack), where actions performed while moving forward must be meticulously undone when backtracking. It introduces us to the beauty of dancing links for removing and restoring the cells of a matrix in a dance which is both simple to implement and very efficient. --Christine Solnon, Department of Computer Science, INSA Lyon

Register your book for convenient access to downloads, updates, and/or corrections as they become available.]]>
736 Donald Ervin Knuth 0201038064 Dang-Khoa 0 4.67 Art of Computer Programming, The: Combinatorial Algorithms, Volume 4B
author: Donald Ervin Knuth
name: Dang-Khoa
average rating: 4.67
book published:
rating: 0
read at:
date added: 2023/08/03
shelves: algorithms, classic, best-cs-textbooks-that-i-read, pause-atm, streetfighting-computer-scientists
review:

]]>
<![CDATA[Pearls of Algorithm Engineering]]> 60255826 Paolo Ferragina 1009123289 Dang-Khoa 0 to-read, algorithms 0.0 Pearls of Algorithm Engineering
author: Paolo Ferragina
name: Dang-Khoa
average rating: 0.0
book published:
rating: 0
read at:
date added: 2023/07/19
shelves: to-read, algorithms
review:

]]>
Problems on Algorithms 1639045 Ian Parberry 0134335589 Dang-Khoa 0 4.25 1995 Problems on Algorithms
author: Ian Parberry
name: Dang-Khoa
average rating: 4.25
book published: 1995
rating: 0
read at:
date added: 2023/05/20
shelves: textbooks, algorithms, pause-atm
review:

]]>
<![CDATA[Algorithms in C++ Part 5: Graph Algorithms]]> 931590 528 Robert Sedgewick 0201361183 Dang-Khoa 4 4.39 Algorithms in C++ Part 5: Graph Algorithms
author: Robert Sedgewick
name: Dang-Khoa
average rating: 4.39
book published:
rating: 4
read at: 2023/04/03
date added: 2023/04/03
shelves: algorithms, textbooks, programming, cpp-language
review:
some parts of the book are really hard to understand ...
]]>
<![CDATA[Guide to Competitive Programming: Learning and Improving Algorithms Through Contests (Undergraduate Topics in Computer Science)]]> 36881945
Topics and features: reviews the features of the C++ programming language, and describes how to create efficient algorithms that can quickly process large data sets; discusses sorting algorithms and binary search, and examines a selection of data structures of the C++ standard library; introduces the algorithm design technique of dynamic programming, and investigates elementary graph algorithms; covers such advanced algorithm design topics as bit-parallelism and amortized analysis, and presents a focus on efficiently processing array range queries; surveys specialized algorithms for trees, and discusses the mathematical topics that are relevant in competitive programming; examines advanced graph techniques, geometric algorithms, and string techniques; describes a selection of more advanced topics, including square root algorithms and dynamic programming optimization.

This easy-to-follow guide is an ideal reference for all students wishing to learn algorithms, and practice for programming contests. Knowledge of the basics of programming is assumed, but previous background in algorithm design or programming contests is not necessary. Due to the broad range of topics covered at various levels of difficulty, this book is suitable for both beginners and more experienced readers.]]>
279 Antti Laaksonen 3319725467 Dang-Khoa 4 4.25 Guide to Competitive Programming: Learning and Improving Algorithms Through Contests (Undergraduate Topics in Computer Science)
author: Antti Laaksonen
name: Dang-Khoa
average rating: 4.25
book published:
rating: 4
read at: 2022/11/09
date added: 2022/11/09
shelves: programming, algorithms, cpp-language
review:

]]>
<![CDATA[Design and Analysis of Algorithms: A Contemporary Perspective]]> 42362502 350 Sandeep Sen 1108721990 Dang-Khoa 0 to-read, algorithms 0.0 Design and Analysis of Algorithms: A Contemporary Perspective
author: Sandeep Sen
name: Dang-Khoa
average rating: 0.0
book published:
rating: 0
read at:
date added: 2022/10/30
shelves: to-read, algorithms
review:

]]>
Algorithms 20613168 448 Jeff Erickson Dang-Khoa 4 4.54 2013 Algorithms
author: Jeff Erickson
name: Dang-Khoa
average rating: 4.54
book published: 2013
rating: 4
read at: 2022/10/14
date added: 2022/10/16
shelves: favorites, best-cs-textbooks-that-i-read, algorithms, graph-theory
review:
Except the min cut & max flow part of the book, Jeff's treatment of graph algorithms is intuitive and didactic.
]]>
<![CDATA[Combinatorics on Words (Encyclopedia of Mathematics and Its Applications - Vol 17)]]> 4563262 260 M. Lothaire 0201135167 Dang-Khoa 0 4.50 1983 Combinatorics on Words (Encyclopedia of Mathematics and Its Applications - Vol 17)
author: M. Lothaire
name: Dang-Khoa
average rating: 4.50
book published: 1983
rating: 0
read at:
date added: 2022/10/16
shelves: to-read, combinatorics, algorithms, stringology
review:

]]>
<![CDATA[Complexity and Real Computation]]> 2510173 469 Lenore Blum 0387982817 Dang-Khoa 0 to-read, algorithms 4.25 1997 Complexity and Real Computation
author: Lenore Blum
name: Dang-Khoa
average rating: 4.25
book published: 1997
rating: 0
read at:
date added: 2022/10/08
shelves: to-read, algorithms
review:

]]>
Algorithms 10803540
The algorithms in this book represent a body of knowledge developed over the last 50 years that has become indispensable, not just for professional programmers and computer science students but for any student with interests in science, mathematics, and engineering, not to mention students who use computation in the liberal arts.

The companion web site, algs4.cs.princeton.edu contains An online synopsis Full Java implementations Test data Exercises and answers Dynamic visualizations Lecture slides Programming assignments with checklists Links to related material
The MOOC related to this book is accessible via the "Online Course" link at algs4.cs.princeton.edu. The course offers more than 100 video lecture segments that are integrated with the text, extensive online assessments, and the large-scale discussion forums that have proven so valuable. Offered each fall and spring, this course regularly attracts tens of thousands of registrants.

Robert Sedgewick and Kevin Wayne are developing a modern approach to disseminating knowledge that fully embraces technology, enabling people all around the world to discover new ways of learning and teaching. By integrating their textbook, online content, and MOOC, all at the state of the art, they have built a unique resource that greatly expands the breadth and depth of the educational experience.]]>
976 Robert Sedgewick 032157351X Dang-Khoa 5 4.44 1983 Algorithms
author: Robert Sedgewick
name: Dang-Khoa
average rating: 4.44
book published: 1983
rating: 5
read at: 2018/02/20
date added: 2022/10/08
shelves: computer-science, programming, best-cs-textbooks-that-i-read, algorithms, textbooks, favorites
review:
After going through the 3rd edition, I realized the 4th edition is the best one so far. Although it omits some algorithms (and put them into the creative problems section), it is much more concise in regard to both the algorithm's implementation and description.
]]>
Algorithmic Graph Theory 2420069 272 Alan Gibbons 0521288819 Dang-Khoa 0 4.17 1985 Algorithmic Graph Theory
author: Alan Gibbons
name: Dang-Khoa
average rating: 4.17
book published: 1985
rating: 0
read at:
date added: 2022/09/27
shelves: to-read, algorithms, graph-theory, maths
review:

]]>
Algorithms on Strings 1703309 392 Maxime Crochemore 0521848997 Dang-Khoa 0 4.35 2001 Algorithms on Strings
author: Maxime Crochemore
name: Dang-Khoa
average rating: 4.35
book published: 2001
rating: 0
read at:
date added: 2022/09/25
shelves: to-read, algorithms, streetfighting-computer-scientists
review:

]]>
<![CDATA[Foundations of Multidimensional and Metric Data Structures (The Morgan Kaufmann Series in Data Management Systems)]]> 1579270 1024 Hanan Samet 0123694469 Dang-Khoa 0 4.54 2006 Foundations of Multidimensional and Metric Data Structures (The Morgan Kaufmann Series in Data Management Systems)
author: Hanan Samet
name: Dang-Khoa
average rating: 4.54
book published: 2006
rating: 0
read at:
date added: 2022/09/25
shelves: to-read, algorithms, computer-graphics, database, programming, streetfighting-computer-scientists
review:

]]>
<![CDATA[Flexible Pattern Matching in Strings: Practical On-Line Search Algorithms for Texts and Biological Sequences]]> 1755507 232 Gonzalo Navarro 0521039932 Dang-Khoa 0 3.00 2002 Flexible Pattern Matching in Strings: Practical On-Line Search Algorithms for Texts and Biological Sequences
author: Gonzalo Navarro
name: Dang-Khoa
average rating: 3.00
book published: 2002
rating: 0
read at:
date added: 2022/09/25
shelves: to-read, algorithms, programming
review:

]]>
<![CDATA[Compact Data Structures: A Practical Approach]]> 30423501 570 Gonzalo Navarro 1107152380 Dang-Khoa 0 4.20 Compact Data Structures: A Practical Approach
author: Gonzalo Navarro
name: Dang-Khoa
average rating: 4.20
book published:
rating: 0
read at:
date added: 2022/09/24
shelves: to-read, algorithms, programming
review:

]]>
Advanced Data Structures 6702720 474 Peter Brass 0521880378 Dang-Khoa 0 4.18 2008 Advanced Data Structures
author: Peter Brass
name: Dang-Khoa
average rating: 4.18
book published: 2008
rating: 0
read at:
date added: 2022/09/24
shelves: algorithms, to-read, programming, cpp-language
review:

]]>
<![CDATA[The Recursive Book of Recursion: Ace the Coding Interview with Python and JavaScript]]> 60244498 An accessible yet rigorous crash course on recursive programming using Python and JavaScript examples.

Recursion, and recursive algorithms, have a reputation for being intimidating. They're seen as an advanced computer science topic often brought up in coding interviews. Moreover, coders often perceive the use of a recursive algorithm as a sophisticated solution that only true programmers can produce. But there's nothing magical about recursion. Its fearsome reputation is more a product of poor teaching than of the complexity of recursion itself.

This book teaches the basics of recursion, exposes the ways it's often poorly taught, and clarifies the fundamental principles behind all recursive algorithms. It is project-based, containing complete, runnable programs in both Python and JavaScript, and covers several common recursive algorithms for tasks like calculating factorials, producing numbers in the Fibonacci sequence, tree traversal, maze solving, binary search, quicksort and merge sort, Karatsuba multiplication, permutations and combinations, and solving the eight queens problem.

The book also explains tail call optimization and memoization, concepts often employed to produce effective recursive algorithms, and the call stack, which is a critical part of how recursive functions work but is almost never explicitly pointed out in lessons on recursion. The last chapter, on fractals, culminates with examples of the beautiful fractal shapes recursion can produce.]]>
305 Al Sweigart 1718502036 Dang-Khoa 3 4.16 The Recursive Book of Recursion: Ace the Coding Interview with Python and JavaScript
author: Al Sweigart
name: Dang-Khoa
average rating: 4.16
book published:
rating: 3
read at: 2022/09/19
date added: 2022/09/19
shelves: algorithms, programming, python-language, javascript
review:
2.5: the book should have been much shorter if the book only focuses on Python. It is still good for someone who is new to recursive approach.
]]>
Thinking Recursively 629660 Concentration on the practical value of recursion. Eleven chapters emphasizing recursion as a unified concept. Extensive discussion of the mathematical concepts which help the students to develop an appropriate conceptual model. Large number of imaginative examples with solutions. Large sets of exercises.

This is the 1980s original, with examples in Pascal. A 2000s version, using Java, is listed as a separate book.]]>
192 Eric S. Roberts 0471816523 Dang-Khoa 3 algorithms, programming 3.78 1986 Thinking Recursively
author: Eric S. Roberts
name: Dang-Khoa
average rating: 3.78
book published: 1986
rating: 3
read at: 2022/09/19
date added: 2022/09/19
shelves: algorithms, programming
review:

]]>
<![CDATA[Algorithms in C++, Parts 1-4: Fundamentals, Data Structure, Sorting, Searching, Third Edition]]> 425213 738 Robert Sedgewick 0201350882 Dang-Khoa 4 Chưa có time giải hết bài tập, nhưng vài chương đầu làm th� thì mình thấy khá ổn. Mỗi tội là không có solutions.

Mình không thích phần code C++ trong này lắm, đặc biệt là 1 chương dành hẳn cho c++ syntax nhưng cũng thực s� không đến đâu. Mình vote là giới thiệu phần syntax � phần ph� lục hơn. Template đc s� dụng như khá là minimal ..., mặc dù 1 s� phần có s� dụng cho parameterized types nhưng không đc đ� cập sâu.]]>
4.11 1998 Algorithms in C++, Parts 1-4: Fundamentals, Data Structure, Sorting, Searching, Third Edition
author: Robert Sedgewick
name: Dang-Khoa
average rating: 4.11
book published: 1998
rating: 4
read at: 2022/09/13
date added: 2022/09/13
shelves: algorithms, best-cs-textbooks-that-i-read, classic, cpp-language, programming, textbooks, favorites, computer-science
review:
Giống với bản 4th, bản này phù hợp với bạn nào dẫn nhập vào thuật toán: không đi quá sâu vào phần toán cũng như các thuật toán phức tạp; đa phần các thuật toán đc đ� cập dài dưới 1 trang a4. Nhiều thuật toán đc đ� cập hơn so với 4th (có l� c� thấy 1 s� cấu trúc đã hơi lỗi thời). Văn phong d� hiểu, tuy nhiên nhiều lúc cảm thấy b� dài dòng ...
Chưa có time giải hết bài tập, nhưng vài chương đầu làm th� thì mình thấy khá ổn. Mỗi tội là không có solutions.

Mình không thích phần code C++ trong này lắm, đặc biệt là 1 chương dành hẳn cho c++ syntax nhưng cũng thực s� không đến đâu. Mình vote là giới thiệu phần syntax � phần ph� lục hơn. Template đc s� dụng như khá là minimal ..., mặc dù 1 s� phần có s� dụng cho parameterized types nhưng không đc đ� cập sâu.
]]>
<![CDATA[The Design and Analysis of Algorithms (Monographs in Computer Science)]]> 1639047 330 Dexter C. Kozen 0387976876 Dang-Khoa 0 to-read, algorithms 4.32 1991 The Design and Analysis of Algorithms (Monographs in Computer Science)
author: Dexter C. Kozen
name: Dang-Khoa
average rating: 4.32
book published: 1991
rating: 0
read at:
date added: 2022/09/07
shelves: to-read, algorithms
review:

]]>
<![CDATA[Design and Analysis of Computer Algorithms, The]]> 112266 470 Alfred V. Aho 0201000296 Dang-Khoa 0 to-read, algorithms 3.88 Design and Analysis of Computer Algorithms, The
author: Alfred V. Aho
name: Dang-Khoa
average rating: 3.88
book published:
rating: 0
read at:
date added: 2022/09/07
shelves: to-read, algorithms
review:

]]>
<![CDATA[Cracking the Coding Interview: 150 Programming Questions and Solutions]]> 12544648
The full list of topics are as

The Interview Process This section offers an overview on questions are selected and how you will be evaluated. What happens when you get a question wrong? When should you start preparing, and how? What language should you use? All these questions and more are answered.
Behind the Scenes Learn what happens behind the scenes during your interview, how decisions really get made, who you interview with, and what they ask you. Companies covered include Google, Amazon, Yahoo, Microsoft, Apple and Facebook.
Special Situations This section explains the process for experience candidates, Program Managers, Dev Managers, Testers / SDETs, and more. Learn what your interviewers are looking for and how much code you need to know.
Before the Interview In order to ace the interview, you first need to get an interview. This section describes what a software engineer's resume should look like and what you should be doing well before your interview.
Behavioral Preparation Although most of a software engineering interview will be technical, behavioral questions matter too. This section covers how to prepare for behavioral questions and how to give strong, structured responses.
Technical Questions (+ 5 Algorithm Approaches) This section covers how to prepare for technical questions (without wasting your time) and teaches actionable ways to solve the trickiest algorithm problems. It also teaches you what exactly "good coding" is when it comes to an interview.
150 Programming Questions and Answers This section forms the bulk of the book. Each section opens with a discussion of the core knowledge and strategies to tackle this type of question, diving into exactly how you break down and solve it. Topics covered include  For the widest degree of readability, the solutions are almost entirely written with Java (with the exception of C / C++ questions). A link is provided with the book so that you can download, compile, and play with the solutions yourself.
Changes from the Fourth   The fifth edition includes over 200 pages of new content, bringing the book from 300 pages to over 500 pages. Major revisions were done to almost every solution, including a number of alternate solutions added. The introductory chapters were massively expanded, as were the opening of each of the chapters under Technical Questions. In addition, 24 new questions were added.
Cracking the Coding Interview, Fifth Edition is the most expansive, detailed guide on how to ace your software development / programming interviews.]]>
500 Gayle Laakmann McDowell 1466208686 Dang-Khoa 0 4.29 2008 Cracking the Coding Interview: 150 Programming Questions and Solutions
author: Gayle Laakmann McDowell
name: Dang-Khoa
average rating: 4.29
book published: 2008
rating: 0
read at:
date added: 2022/09/07
shelves: to-read, algorithms, programming
review:

]]>
Approximation Algorithms 145057 380 Vijay V. Vazirani 3540653678 Dang-Khoa 0 4.20 2002 Approximation Algorithms
author: Vijay V. Vazirani
name: Dang-Khoa
average rating: 4.20
book published: 2002
rating: 0
read at:
date added: 2022/09/06
shelves: to-read, algorithms, streetfighting-computer-scientists
review:

]]>
<![CDATA[Purely Functional Data Structures]]> 594288 232 Chris Okasaki 0521663504 Dang-Khoa 0 4.14 1996 Purely Functional Data Structures
author: Chris Okasaki
name: Dang-Khoa
average rating: 4.14
book published: 1996
rating: 0
read at:
date added: 2022/08/23
shelves: to-read, computer-science, algorithms, streetfighting-computer-scientists
review:

]]>
<![CDATA[Structure and Interpretation of Computer Programs]]> 43713 657 Harold Abelson 0262510871 Dang-Khoa 5 4.46 1984 Structure and Interpretation of Computer Programs
author: Harold Abelson
name: Dang-Khoa
average rating: 4.46
book published: 1984
rating: 5
read at:
date added: 2022/08/23
shelves: to-read, computer-science, algorithms, streetfighting-computer-scientists
review:

]]>
Computational Complexity 138562 523 Christos H. Papadimitriou 0201530821 Dang-Khoa 0 3.90 1993 Computational Complexity
author: Christos H. Papadimitriou
name: Dang-Khoa
average rating: 3.90
book published: 1993
rating: 0
read at:
date added: 2022/08/23
shelves: to-read, computer-science, algorithms, computations
review:

]]>
<![CDATA[Graph Theory and Its Applications (Discrete Mathematics and Its Applications)]]> 388050 The superior explanations, broad coverage, and abundance of illustrations and exercises that positioned this as the premier graph theory text remain, but are now augmented by a broad range of improvements. Nearly 200 pages have been added for this edition, including nine new sections and hundreds of new exercises, mostly non-routine.

What else is new?

New chapters on measurement and analytic graph theory
Supplementary exercises in each chapter - ideal for reinforcing, reviewing, and testing.
Solutions and hints, often illustrated with figures, to selected exercises - nearly 50 pages worth
Reorganization and extensive revisions in more than half of the existing chapters for smoother flow of the exposition
Foreshadowing - the first three chapters now preview a number of concepts, mostly via the exercises, to pique the interest of reader

Gross and Yellen take a comprehensive approach to graph theory that integrates careful exposition of classical developments with emerging methods, models, and practical needs. Their unparalleled treatment provides a text ideal for a two-semester course and a variety of one-semester classes, from an introductory one-semester course to courses slanted toward classical graph theory, operations research, data structures and algorithms, or algebra and topology.

]]>
800 Jonathan L. Gross 158488505X Dang-Khoa 0 4.16 1998 Graph Theory and Its Applications (Discrete Mathematics and Its Applications)
author: Jonathan L. Gross
name: Dang-Khoa
average rating: 4.16
book published: 1998
rating: 0
read at:
date added: 2022/05/15
shelves: algorithms, graph-theory, to-read
review:

]]>
<![CDATA[Algorithms and Data Structures: With Applications to Graphics and Geometry]]> 4035984 336 Jürg Nievergelt 0134894286 Dang-Khoa 0 to-read, algorithms 3.50 1992 Algorithms and Data Structures: With Applications to Graphics and Geometry
author: Jürg Nievergelt
name: Dang-Khoa
average rating: 3.50
book published: 1992
rating: 0
read at:
date added: 2022/04/21
shelves: to-read, algorithms
review:

]]>
Randomized Algorithms 425209 496 Rajeev Motwani 0521474655 Dang-Khoa 0 4.15 1995 Randomized Algorithms
author: Rajeev Motwani
name: Dang-Khoa
average rating: 4.15
book published: 1995
rating: 0
read at:
date added: 2022/04/21
shelves: to-read, algorithms, streetfighting-computer-scientists
review:

]]>
<![CDATA[An Introduction to Parallel Algorithms]]> 145089 576 Joseph Jaja 0201548569 Dang-Khoa 0 to-read, algorithms 3.72 1992 An Introduction to Parallel Algorithms
author: Joseph Jaja
name: Dang-Khoa
average rating: 3.72
book published: 1992
rating: 0
read at:
date added: 2022/04/21
shelves: to-read, algorithms
review:

]]>
<![CDATA[Advanced Algorithms and Data Structures]]> 52362532 768 Marcello La Rocca 1617295485 Dang-Khoa 0 to-read, algorithms 4.52 2019 Advanced Algorithms and Data Structures
author: Marcello La Rocca
name: Dang-Khoa
average rating: 4.52
book published: 2019
rating: 0
read at:
date added: 2022/04/21
shelves: to-read, algorithms
review:

]]>
<![CDATA[Algorithms from P to NP, Vol. I: Design and Efficiency]]> 407954 576 Bernard Moret 0805380086 Dang-Khoa 0 to-read, algorithms 4.00 1991 Algorithms from P to NP, Vol. I: Design and Efficiency
author: Bernard Moret
name: Dang-Khoa
average rating: 4.00
book published: 1991
rating: 0
read at:
date added: 2022/04/21
shelves: to-read, algorithms
review:

]]>
<![CDATA[Algorithm Engineering: Bridging the Gap Between Algorithm Theory and Practice (Lecture Notes in Computer Science, 5971)]]> 11236339 529 Matthias Müller-Hannemann 3642148654 Dang-Khoa 0 to-read, algorithms 0.0 2010 Algorithm Engineering: Bridging the Gap Between Algorithm Theory and Practice (Lecture Notes in Computer Science, 5971)
author: Matthias Müller-Hannemann
name: Dang-Khoa
average rating: 0.0
book published: 2010
rating: 0
read at:
date added: 2022/04/21
shelves: to-read, algorithms
review:

]]>
<![CDATA[Algorithm Design and Applications]]> 21552205 800 Michael T. Goodrich 1118335910 Dang-Khoa 0 to-read, algorithms 3.80 2014 Algorithm Design and Applications
author: Michael T. Goodrich
name: Dang-Khoa
average rating: 3.80
book published: 2014
rating: 0
read at:
date added: 2022/04/21
shelves: to-read, algorithms
review:

]]>
A Discipline of Programming 2276288 217 Edsger W. Dijkstra 013215871X Dang-Khoa 0 4.24 1976 A Discipline of Programming
author: Edsger W. Dijkstra
name: Dang-Khoa
average rating: 4.24
book published: 1976
rating: 0
read at:
date added: 2022/04/21
shelves: to-read, computer-science, classic, programming, algorithms, streetfighting-computer-scientists
review:

]]>
<![CDATA[Computer Science: An Interdisciplinary Approach]]> 26260896 Robert Sedgewick and Kevin Wayne’s Computer An Interdisciplinary Approach is the ideal modern introduction to computer science with Java programming for both students and professionals. Taking a broad, applications-based approach, Sedgewick and Wayne teach through important examples from science, mathematics, engineering, finance, and commercial computing. The book demystifies computation, explains its intellectual underpinnings, and covers the essential elements of programming and computational problem solving in today’s environments. The authors begin by introducing basic programming elements such as variables, conditionals, loops, arrays, and I/O. Next, they turn to functions, introducing key modular programming concepts, including components and reuse. They present a modern introduction to object-oriented programming, covering current programming paradigms and approaches to data abstraction. Building on this foundation, Sedgewick and Wayne widen their focus to the broader discipline of computer science. They introduce classical sorting and searching algorithms, fundamental data structures and their application, and scientific techniques for assessing an implementation’s performance. Using abstract models, readers learn to answer basic questions about computation, gaining insight for practical application. Finally, the authors show how machine architecture links the theory of computing to real computers, and to the field’s history and evolution. For each concept, the authors present all the information readers need to build confidence, together with examples that solve intriguing problems. Each chapter contains question-and-answer sections, self-study drills, and challenging problems that demand creative solutions. Companion web site ( ) contains Companion 20-part series of video lectures is available at]]> 1168 Robert Sedgewick 0134076427 Dang-Khoa 5
Highly recommend this book to anyone who wants to be serious about CS. However, this book is even better if you already have some hands-on programming.]]>
4.50 2016 Computer Science: An Interdisciplinary Approach
author: Robert Sedgewick
name: Dang-Khoa
average rating: 4.50
book published: 2016
rating: 5
read at: 2022/03/21
date added: 2022/03/21
shelves: algorithms, textbooks, computer-science, best-cs-textbooks-that-i-read
review:
One of the best introductions to Computer Science with a wide range of topics such as Algorithms, DFA, and circuit design. The exercises are superb and intriguing. As always, the visualizations and figures are just *chef kiss* - The authors have been spending decades to perfect it.

Highly recommend this book to anyone who wants to be serious about CS. However, this book is even better if you already have some hands-on programming.
]]>
Introduction to Graph Theory 206649 588 Douglas B. West 0130144002 Dang-Khoa 0 3.96 1995 Introduction to Graph Theory
author: Douglas B. West
name: Dang-Khoa
average rating: 3.96
book published: 1995
rating: 0
read at:
date added: 2022/03/12
shelves: to-read, algorithms, graph-theory
review:

]]>
<![CDATA[Graph Theory with Algorithms and its Applications: In Applied Science and Technology]]> 15919794 232 Santanu Saha Ray 8132207491 Dang-Khoa 0 4.75 2012 Graph Theory with Algorithms and its Applications: In Applied Science and Technology
author: Santanu Saha Ray
name: Dang-Khoa
average rating: 4.75
book published: 2012
rating: 0
read at:
date added: 2022/03/12
shelves: to-read, algorithms, graph-theory
review:

]]>
Graph Algorithms, 2nd Edition 13727462 202 Shimon Even 0521736536 Dang-Khoa 0 4.00 1979 Graph Algorithms, 2nd Edition
author: Shimon Even
name: Dang-Khoa
average rating: 4.00
book published: 1979
rating: 0
read at:
date added: 2022/03/12
shelves: to-read, algorithms, graph-theory
review:

]]>
<![CDATA[The Art of Computer Programming, Volume 1: Fundamental Algorithms]]> 112247 Ebook (PDF version) produced by Mathematical Sciences Publishers (MSP),]]> 672 Donald Ervin Knuth 0201896834 Dang-Khoa 5
### Vì sao TAOCP Vol 1 khó đọc

- Toàn b� chương 1 nói v� kiến thức toán cho phân tích thuật toán. Nội dung không quá khó (tr� phần bài tập), nhưng tốc đ� rất nhanh và không đi sâu (những phần được đào sâu thì nằm trong phần bài tập). Cho nên muốn đọc TAOCP hiệu qu� thì tốt nhất là bạn nên đọc Concrete Mathematics (CMath) của Knuth trước, sau đó lướt sơ qua phần 1 của cuốn này; đừng quá bận tâm đến bài tập trong chương này nếu bạn đã làm kha khá bài tập bên CMath.
- Ngôn ng� MIX: do không dùng ngôn ng� bậc cao hơn đồng thời được thiết k� theo h� thống máy tính thời 1960s, MIX rất bất tiện và đôi khi khá rối. Nếu đã biết hợp ng� thì phần này s� tương đối d� chịu. Nhưng mình khuyến khích đọc đ� biết thời xa xưa dân tình viết code th� nào, phần bài tập có th� t� viết lại bằng ngôn ng� khác. Chuyện này ảnh hưởng khá nhiều đến Chương 2 của sách, khi mà Knuth tận dụng 1 s� tính năng hơi quái d� của MIX đ� tiết kiệm b� nh� cho CTDL.
- Phong cách chứng minh của Knuth: rất "cô đọng", thậm chí có phần hơn "informal" khi Knuth thấy nó d� hoặc là Knuth s� chứng minh dạng tổng quát (đôi khi không trực quan). Theo mình thì với cùng 1 Theorem, người đọc nên tham khảo thêm CLRS đ� hiểu rõ từng bước chứng minh, sau đó quay lại đọc phần Knuth viết s� thấy d� hiểu hơn nhiều.

## Đánh giá một s� chương

1. 1.2 Mathematical Preliminaries: đây là rào cản lớn nhất cho những ai muốn tiếp cận TAOCP mặc dù những kiến thức phần này được s� dụng � từng chương trong sách. Nếu đ� ý bạn s� thấy Knuth luôn cập nhật thêm bài tập trong phần này đ� lượng kiến thức nền đ� đ� bạn hiểu được những chứng minh, dù là mới nhất liên quan đến thuật toán. Cách tốt nhất đ� đọc phần này (và không muốn đọc toàn b� CMath) là làm toàn b� bài tập nào dưới < 25 hoặc M20 hoặc HM < 15. Dĩ nhiên, mình đ� xuất là đọc CMath thay vì tốn quá nhiều thời gian vào đây.
2. MIX: Đừng quá quan tâm, bởi tương lai Knuth s� thay bằng MMIX và trong Volume 4 đã hoàn toàn thay bằng MMIX. Ngôn ng� này không quá khó đ� đọc, tuy nhiên chi phí cho một s� câu lệnh có tương đối khác so với câu lệnh tương t� với phần cứng hiện nay.
3. 2.2 Linear Lists: Đây là phần hay nhất, nhưng cũng là phần gây nhiều tr� ngại: Knuth rất thích dùng pointer, nhưng pointer trong MIX khá là free style, nó thậm chí không có type dẫn đến chuyện Knuth muốn làm gì thì làm với pointer. Điều đó dẫn đến chuyện bạn hầu như không th� viết lại kiểu 1-1 với thiết k� của các CTDL được đ� cập trong sách. Phần này có khá nhiều ví d� hấp dẫn, điển hình gồm chương trình gi� lập thang máy, các toán t� trên đa thức, topological sort.
4. 2.3 Trees: Phần hay nhất trong sách. Lưu ý: một s� chứng minh Knuth s� dụng cho c� trường hợp cây/đ� th� vô hạn, nên đ� d� tiếp thu hơn, mình khuyến khích đọc phần chứng minh bên CLRS hơn.


Vậy bạn có nên đọc TAOCP Vol 1 không? Theo mình, nếu bạn là sinh viên năm 1-2 thì tốt nhất nên tạm gác cuốn này lại. Có nhiều cuốn dẫn nhập với các tiếp cận nh� nhàng hơn: đơn c� nhưng loạt sách v� thuật toán của Robert Sedgewick (Sedgewick cũng là học trò của Knuth, và luận văn của ông là v� phân tích đ� phức tạp của Quick Sort - nếu đọc Volumne 3 phần Sắp xếp bạn s� đ� ý thấy có khác nhiều ch� dẫn có tên của Sedgewick, hẳn là Knuth đã giao đống bài tập v� cho Sedgewick làm). Dưới đây là một s� cuốn mà mình nghĩ s� phù hợp với năm 1-2 hơn:
- Introduction to Computer Science.
- Algorithms.
- Algorithms Design Manual.
- Algorithms by Jeff

Mình đánh giá cao CLRS nhưng mình nghĩ CLRS nên dành đọc sau khi bạn đã đọc xong Algorithms của Sedgewick.]]>
4.38 1973 The Art of Computer Programming, Volume 1: Fundamental Algorithms
author: Donald Ervin Knuth
name: Dang-Khoa
average rating: 4.38
book published: 1973
rating: 5
read at: 2021/12/28
date added: 2021/12/28
shelves: computer-science, best-cs-textbooks-that-i-read, algorithms, i-have-the-hard-copy, streetfighting-computer-scientists
review:
[Đang viết...]

### Vì sao TAOCP Vol 1 khó đọc

- Toàn b� chương 1 nói v� kiến thức toán cho phân tích thuật toán. Nội dung không quá khó (tr� phần bài tập), nhưng tốc đ� rất nhanh và không đi sâu (những phần được đào sâu thì nằm trong phần bài tập). Cho nên muốn đọc TAOCP hiệu qu� thì tốt nhất là bạn nên đọc Concrete Mathematics (CMath) của Knuth trước, sau đó lướt sơ qua phần 1 của cuốn này; đừng quá bận tâm đến bài tập trong chương này nếu bạn đã làm kha khá bài tập bên CMath.
- Ngôn ng� MIX: do không dùng ngôn ng� bậc cao hơn đồng thời được thiết k� theo h� thống máy tính thời 1960s, MIX rất bất tiện và đôi khi khá rối. Nếu đã biết hợp ng� thì phần này s� tương đối d� chịu. Nhưng mình khuyến khích đọc đ� biết thời xa xưa dân tình viết code th� nào, phần bài tập có th� t� viết lại bằng ngôn ng� khác. Chuyện này ảnh hưởng khá nhiều đến Chương 2 của sách, khi mà Knuth tận dụng 1 s� tính năng hơi quái d� của MIX đ� tiết kiệm b� nh� cho CTDL.
- Phong cách chứng minh của Knuth: rất "cô đọng", thậm chí có phần hơn "informal" khi Knuth thấy nó d� hoặc là Knuth s� chứng minh dạng tổng quát (đôi khi không trực quan). Theo mình thì với cùng 1 Theorem, người đọc nên tham khảo thêm CLRS đ� hiểu rõ từng bước chứng minh, sau đó quay lại đọc phần Knuth viết s� thấy d� hiểu hơn nhiều.

## Đánh giá một s� chương

1. 1.2 Mathematical Preliminaries: đây là rào cản lớn nhất cho những ai muốn tiếp cận TAOCP mặc dù những kiến thức phần này được s� dụng � từng chương trong sách. Nếu đ� ý bạn s� thấy Knuth luôn cập nhật thêm bài tập trong phần này đ� lượng kiến thức nền đ� đ� bạn hiểu được những chứng minh, dù là mới nhất liên quan đến thuật toán. Cách tốt nhất đ� đọc phần này (và không muốn đọc toàn b� CMath) là làm toàn b� bài tập nào dưới < 25 hoặc M20 hoặc HM < 15. Dĩ nhiên, mình đ� xuất là đọc CMath thay vì tốn quá nhiều thời gian vào đây.
2. MIX: Đừng quá quan tâm, bởi tương lai Knuth s� thay bằng MMIX và trong Volume 4 đã hoàn toàn thay bằng MMIX. Ngôn ng� này không quá khó đ� đọc, tuy nhiên chi phí cho một s� câu lệnh có tương đối khác so với câu lệnh tương t� với phần cứng hiện nay.
3. 2.2 Linear Lists: Đây là phần hay nhất, nhưng cũng là phần gây nhiều tr� ngại: Knuth rất thích dùng pointer, nhưng pointer trong MIX khá là free style, nó thậm chí không có type dẫn đến chuyện Knuth muốn làm gì thì làm với pointer. Điều đó dẫn đến chuyện bạn hầu như không th� viết lại kiểu 1-1 với thiết k� của các CTDL được đ� cập trong sách. Phần này có khá nhiều ví d� hấp dẫn, điển hình gồm chương trình gi� lập thang máy, các toán t� trên đa thức, topological sort.
4. 2.3 Trees: Phần hay nhất trong sách. Lưu ý: một s� chứng minh Knuth s� dụng cho c� trường hợp cây/đ� th� vô hạn, nên đ� d� tiếp thu hơn, mình khuyến khích đọc phần chứng minh bên CLRS hơn.


Vậy bạn có nên đọc TAOCP Vol 1 không? Theo mình, nếu bạn là sinh viên năm 1-2 thì tốt nhất nên tạm gác cuốn này lại. Có nhiều cuốn dẫn nhập với các tiếp cận nh� nhàng hơn: đơn c� nhưng loạt sách v� thuật toán của Robert Sedgewick (Sedgewick cũng là học trò của Knuth, và luận văn của ông là v� phân tích đ� phức tạp của Quick Sort - nếu đọc Volumne 3 phần Sắp xếp bạn s� đ� ý thấy có khác nhiều ch� dẫn có tên của Sedgewick, hẳn là Knuth đã giao đống bài tập v� cho Sedgewick làm). Dưới đây là một s� cuốn mà mình nghĩ s� phù hợp với năm 1-2 hơn:
- Introduction to Computer Science.
- Algorithms.
- Algorithms Design Manual.
- Algorithms by Jeff

Mình đánh giá cao CLRS nhưng mình nghĩ CLRS nên dành đọc sau khi bạn đã đọc xong Algorithms của Sedgewick.
]]>
Algorithm Design 145055 August 6, 2009 Author, Jon Kleinberg, was recently cited in the for his statistical analysis research in the Internet age.]]> 864 Jon Kleinberg 0321295358 Dang-Khoa 0 4.16 2005 Algorithm Design
author: Jon Kleinberg
name: Dang-Khoa
average rating: 4.16
book published: 2005
rating: 0
read at:
date added: 2021/11/23
shelves: to-read, computer-science, algorithms
review:

]]>
<![CDATA[Algorithms on Strings, Trees, and Sequences: Computer Science and Computational Biology]]> 145058 556 Dan Gusfield 0521585198 Dang-Khoa 0 to-read, algorithms 4.08 1997 Algorithms on Strings, Trees, and Sequences: Computer Science and Computational Biology
author: Dan Gusfield
name: Dang-Khoa
average rating: 4.08
book published: 1997
rating: 0
read at:
date added: 2021/11/22
shelves: to-read, algorithms
review:

]]>
<![CDATA[Foundations of Computer Science: C Edition]]> 112268 786 Alfred V. Aho 0716782847 Dang-Khoa 0 4.03 1992 Foundations of Computer Science: C Edition
author: Alfred V. Aho
name: Dang-Khoa
average rating: 4.03
book published: 1992
rating: 0
read at:
date added: 2021/11/22
shelves: to-read, algorithms, computer-science
review:

]]>
Algorithms 138563 336 Sanjoy Dasgupta 0073523402 Dang-Khoa 0 4.23 2006 Algorithms
author: Sanjoy Dasgupta
name: Dang-Khoa
average rating: 4.23
book published: 2006
rating: 0
read at:
date added: 2021/08/18
shelves: to-read, computer-science, algorithms
review:

]]>