Copyright statement: This article is the original article for the blogger, without permission may not be reproduced.
Data structure and algorithm design is a required course for CS related professional, but also the focus of IT company written interview. Online information is numberless as the sand, I list some I think is worthy of recommendation of resources, for readers to learn there is a demand. The first is a number of network resources, and then some books reviews and recommendations. If you have a better recommendation, welcome in the comments below, I will add to this list after the screening, also welcomed the recommendation.Continue to update, but I only keep the most mighty wave crashing on a sandy shore, worthy of recommendation.
1, Thierry Rouen University (of Rouen University) Professor Lecroq on the introduction of the string (mode) matching algorithm
Http://igm.univ-mlv.fr/~lecroq/string/node1.html
If the string matching algorithm, you will think of what? Only KMP? Then you weak burst:) is not quick to seeProfessor Lecroq ThierryThe home page, in the above website, the professor gives a detailed introduction of more than 30 pattern matching algorithm (there are some examples of the text) and the realization of the code. It is a rare but not known treasure. Domestic many textbooks, articles, blogs are incorrectly relay erroneous, even different algorithm of KMP and MP are confused, often confused, not knowing they are two algorithms. This problem is too long to speak up words anyway, you still have to make a difference, its quite high level, will not receive misleading.
2, the United States Florida International University professor Allen Weiss Mark home page
Http://users.cis.fiu.edu/~weiss/
Weiss Knuth is Professor Tu (because he is doctoral tutor Sedgewick). He is inTeaching and educating peopleTheachievementIn fact, more than his academic achievements. Its data structure is widely used in the field of teaching materials around the world.I would recommend the followingHis work, and was awarded the outstanding achievement award of the SIGCSE computer science education. His data structure books have multiple versions, both Java version, and the C++ version, as well as C version. And his home page provides all of these books in the source code download. You can think of the data structure, he has basically achieved, so it has a high reference value.
3, Leetcode
Https://leetcode.com/problemset/algorithms/
This site is very famous! There are answers to the questions on the CSDN. Believe that readers may have learned, this is a IT written interview questions judge online system in the United states. Inside collecting more than 300 related algorithms and data structure of the subject. Brush Leetcode is definitely a good way to train thinking skills, enhance the ability of encoding. Occasionally I from the inside to pick a few topics to recreating, think is a very interesting thing, I think, therefore I am:) but I actually have the feeling of brief encounter. I know it's time, the beauty of my algorithm has been written in the draft, (even though I later found out that my book and Leetcode chose theMany problems have many similarBut if I know it at an early date, it should be more exciting for my new book. Anyway, you can't miss it. , of course, Leetcode questions on the answer can be found everywhere, but I suggest you first do see, copy other people's answer is no fun, myself to do it again to see other people to have no better way, perhaps more help.
4, "who's the technology blog" home page
Http://www.cppblog.com/converse/category/974.html
In fact, I would like to recommend July's home page, he has a lot of fame on the CSDN, not to mention more than ten million of the popularity of the amount of popularity. Until I saw the knowledge of the post http://www.zhihu.com/question/24957182. I don't want to comment on his things, just at home. I recommend"The technology blog"Mainly because of the post about July many copied the contents of this blog, I find the root of the original post. I recommend that instead, also expressed support for a original. Blogger for a long time on the BTREE, red black tree, AVL tree, dictionary tree, binary search tree tree search structure are summarized, gives valuable implementation code and shared to everyone, hope that we can in content with others selfless dedication to retain a respect. Respect others and respect themselves.
The following is a review of some of the books (note that I use the word is a review, so I did not list all the books are recommended. You have to see what I'm saying.
1, the God two
Knuth of the "art of computer programming", the absolute industry giants, the first person, a wonderful book. I have had both English and Chinese, but I am veryNoRecommend everyone to read. In a word, a good book is not necessarily suitable for you. I'm commenting on it, because I did see it. Alone didn't tell you, the code book is written in assembly language, and Knuth God created a kind of assembly language, you to think clearly, I think more readers of this article should be in the learning stage, so don't be too ambitious. Another is the introduction of the algorithm, this is also a great reputation, which I do not comment, because I did not read, I can not do not see what I do recommend.
2,Professor Weiss's book
Professor Weiss's bookSolved many problems in my early years of learning data structure. I was looking at Tsinghua out of the C++ version of the version of the. As a reference to the Chinese version of the reference was originally read, but also because of the translation is not ideal to give up. Now do not know how the Chinese version of the situation.Professor WeissThe book has Java version of the. I mainly look at the following two, strongly recommended
- Structures and Problem Solving Using Data C++
- Structures and Algorithm Analysis in Data C++
3, computer algorithm design and analysis, Wang Xiaodong, electronic industry press
I think this is written in Chinese is very good teaching materials, design thought of the algorithm greedy, divide and conquer, backtracking, dynamic programming, probabilistic algorithms are covered and combined with the analysis of many typical problems, and on the P/NP introduced. This book can be used as a reference book to look at the study algorithm. I look at the second version, very old, and now there should be a more new version.
In fact, the data structure of the books I've seen many, so I do have a list is not recommended, but the books recommended reason is Knuth muse with completely different. In order to avoid trouble to everyone I do not list this is not recommended, the reasons for thisYou'll see.
In addition, it is recommended that two extracurricular reading books (unrelated to the data structure, but with the algorithm)
5, Turing's secret, Charles Pezold, people post press
This is the interpretation of Turing life and his thesis.Author Charles PezoldIs famous as a technical writer. His other the Muse is the Code:the hidden language behind the computer software and hardware "(Chinese version of the code: the hidden in behind the software and hardware of the computer language, a translator should not only is in". Turing to algorithm gives precise definition of and solve the decision problem) and seminal construct Turing machine this artifact, this is actually an important beginning of modern study of computer algorithms. If you don't even have a good definition of the algorithm, how can you talk about it? To understand the Turing machine was put forward in the end is what, look at this book on. Of course "Turing's Secret"This book is actually a certain degree of difficulty, if you have learned the theory of computing courses, then the best, or you can read the following book, which will help you better understand"Turing's Secret".
6, computational theory guidance, Sipser Michael
This is the teaching material of computing theory course in University. But I would recommend that you read (if you didn't learn the lessons). If Turing's research is far away from us, then this book is actually closer to the Turing machine and the distance between us. This book will tell you: we discuss the algorithm complex degree o notation, origin lies in the fact that it is defined by a Turing machine (box). You will see the NP problem in Wang Xiaodong's book and algorithm introduction, and I suggest you look at it.Computational theory guidanceTo understand the nature of P, NP, and NP complete problems. (in a sentence, in front of me that I haven't read the introduction to algorithms, but I have seen a directory, just think directory from the point of view, I basically is to understand, so not to read, but I thus know introduction to algorithms is talking)
-----------------------------------------------------------------------------------
In the end you can think of advertising stickers, but I also sincerely recommend (is not to avoid the so-called Yin Yin), after all, I wrote the book I have seen. But my clamp complex in the list of Weiss, Sipser such as God, the slightly irreverent, so I used a gorgeous lateral will separate them. I on the algorithm and data structure of some thinks income pooled in my new book "the beauty of algorithms -- hidden in the data structure behind the principle", please don't complain about the topic is too big, because this is the press, this I do not grasp the initiative, the author is actually very weak. You may still be unable to buy, because the book is out, some of the shop has not arrived. To understand the contents of the book see aboveAlgorithm of the United States is a grand listing welcome attention(http://prog3.com/sbdm/blog/baimafujinji/article/details/50484348). If you are the reader of the book, be sure to add the algorithm to the study group.Four hundred and ninety-five million five hundred and seventy-three thousand eight hundred and sixty-five), there are more resources waiting for you, and you will get my first time to answer the questions you have in your study. More attention to this blog, I will publish the book all the source code to the blog.
- top
- Eighteen
- step on
- Zero
- Guess you're looking for