mirror of
https://github.com/PKUFlyingPig/cs-self-learning.git
synced 2026-06-23 18:06:56 +08:00
[TRANSLATION] translate Algo.md
This commit is contained in:
parent
7bdf600358
commit
647abc210e
1 changed files with 35 additions and 0 deletions
35
docs/数据结构与算法/Algo.en.md
Normal file
35
docs/数据结构与算法/Algo.en.md
Normal 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).
|
||||||
Loading…
Reference in a new issue