I am a beginner and want to start to learn graphs.Is it necessary to do trees before doing graphs.what are the requirements to study graphs and trees.
# | User | Rating |
---|---|---|
1 | tourist | 3993 |
2 | jiangly | 3743 |
3 | orzdevinwang | 3707 |
4 | Radewoosh | 3627 |
5 | jqdai0815 | 3620 |
6 | Benq | 3564 |
7 | Kevin114514 | 3443 |
8 | ksun48 | 3434 |
9 | Rewinding | 3397 |
10 | Um_nik | 3396 |
# | User | Contrib. |
---|---|---|
1 | cry | 167 |
2 | Um_nik | 163 |
3 | maomao90 | 162 |
3 | atcoder_official | 162 |
5 | adamant | 159 |
6 | -is-this-fft- | 158 |
7 | awoo | 155 |
8 | TheScrasse | 154 |
9 | Dominater069 | 153 |
10 | nor | 152 |
I am a beginner and want to start to learn graphs.Is it necessary to do trees before doing graphs.what are the requirements to study graphs and trees.
Name |
---|
Auto comment: topic has been updated by amand26 (previous revision, new revision, compare).
Why downvotes
You are absolutely right
Try solving problems in order from easiest, from CF archive. If you don't know a topic, google it, look at editorial or codes.
Study some graph theory, learn some theoretical stuff to kick off, learn some formulas, theorems and why they work (formal proofs). Then proceed to study algorithms and it will be a walk in the park. You should start with traversal algorithms (Depth First Search, Breadth First Search) which are the easiest and most essential because every algorithm is some kind of traversal in a graph. Then you can study the mainstream problems which include Shortest Paths, Minimal Spanning Trees, (Strong) Connectivity Problems, problems with optimal substructure (solvable by backtracking or dynamic programming). I don't think there's any optimal order to study these topics, but each one of them is important and also there are many many others, there's always something new to learn :)
Thanks everybody.Very helpful.
ggmu