[TRANSLATION] translate Algo.md

This commit is contained in:
BarbarossaWang 2022-09-25 19:22:01 +08:00 committed by GitHub
parent 7bdf600358
commit 647abc210e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -0,0 +1,35 @@
# Coursera: Algorithms I & II
## Descriptions
- Offered by: Princeton
- Prerequisites: CS61A
- Programming Languages: Java
- Difficulty: 🌟🌟🌟
- Class Hour: 60 hours
This is the highest rated algorithms course on [Coursera](https://www.coursera.org), and Professor Robert Sedgewick has a magic way of making even the most complex algorithms look incredibly vivid and simple. To be honest, the KMP and network flow algorithms that I have been struggling with for years were made clear to me in this course, and I can even write derivations and proofs for both of them two years later.
Do you think that after learning the algorithm, then you forget it? I think the core of letting you fully grasp an algorithm lies in understanding three points:
- Why do you do this? (Correctness derivation, or the essence of the entire algorithm.)
- How to implement it? (It is not enough to learn without practices.)
- Use it to solve practical problems (Know how to apply you have learned is real skill.)
The composition of this course fits the three steps above very well. Watching the course videos and reading the professor's [textbook](https://algs4.cs.princeton.edu/home/) will help you understand the nature of the algorithm and allow you to tell others why the algorithm has to look like this in very vivid and simple terms .
After understanding algorithms, you can read the professor's [code implementation](https://algs4.cs.princeton.edu/code/) of all the data structures and algorithms taught in the course.
Note that these implementations are not demo, but industrial, efficient implementations. They are high-quality code that have rigorous annotations and variable names, and their modularization is also quite good. I learned a lot from these codes.
Finally, the most exciting part of the course is the 10 high-quality projects, all with background descriptions of real-world problems, rich test samples, and an automated scoring system (code style is also a part of the scoring). You'll get a taste of algorithms in real life.
## Course Resources
- Course Website: [Algorithm I](https://www.coursera.org/learn/algorithms-part1), [Algorithm II](https://www.coursera.org/learn/algorithms-part2)
- Recordings: [Coursera: Algorithm I](https://www.coursera.org/learn/algorithms-part1), [Coursera: lgorithm II](https://www.coursera.org/learn/algorithms-part2), [CUvids: Algorithms, 4th Edition](https://cuvids.io/app/course/2/)
- Textbooks: [Algorithms, 4th Edition](https://algs4.cs.princeton.edu/home/)
- Assignments: 10 Projects, the course website has specific requirements
## Personal Resources
All the resources and assignments used by @PKUFlyingPig in this course are maintained in [PKUFlyingPig/Princeton-Algorithm - GitHub](https://github.com/PKUFlyingPig/Princeton-Algorithm).