Algorithms design book / cookbook for Julia?

Although I share the love for this textbook of Steven Boyd’s and I wholeheartedly recommend it to everyone, it should be emphasized that it is a linear algebra (plus some intro to optimization) textbook. I am not sure if it classifies as a textbook on data structures and algorithms. At first I thought that something like Cormen’s Introduction to Algorithms (4th edition is coming soon) or Algorithms, 4th Edition by Robert Sedgewick and Kevin Wayne is desired. But I myselft did not learn from these text, that is why I was hesitating to recommend them. I am only aware that they are used by some for intro to algos and data structures.

But then @phendric mentions Numerical recipes, which suggests that indeed some material on numerical (linear algebra and related) algorithms is actually desired. Let me then share my recent discovery in this domain: besides Boyd’s textbook I like Toby Driscoll’s Fundamentals of Numerical Computation | Toby Driscoll. It is that kind of a (introductory yet resonably comprehensive) textbook that demonstrates all the concepts and issues with (Matlab) code. Lovely enough, @tobydriscoll seems to be exploring Julia quite a bit (see also Matlab vs. Julia vs. Python | Toby Driscoll). Maybe the next edition of his textbook will be in Julia :slight_smile: Maybe not.

As a bibliophile (and occassional reader) I keep an eye on the soon to be published book Numerical Linear Algebra with Julia by Eric Darve and Mary Wootters. Just based on the short description I cannot tell if it is just yet another linear algebra primer where textbook-grade for-loops will be rewritten in Julia, or if it will contain any deeper Julia-specific know-how that is often demonstrated by some gurus here at Discourse.

Finally, although Kwong’s Hands-On Design Patterns and Best Practices with Julia | Packt has already been mentioned here and refused by the author of the original post, I would still suggest giving this book another chance. True, it is not about algorithms per se, but it is one of the more comprehensive and compact coverages of Julian programing in Julia. It does contain a know-how relevant for Julian implementation of algorithms in Julia, including the numerical ones.

11 Likes