-
Notifications
You must be signed in to change notification settings - Fork 19
how to structure topics
Reyad Salahin edited this page Oct 8, 2019
·
1 revision
The contents for a beginner should be like following
- Preface
- Prerequisites
- Complexity
- Problem Solving Techniques: Brief intro and Explanation
- Ad-hoc method
- Brute Force (I): Basic intro with brute force techniques
- Divide & Conquer (I) : Basic intro with divide and conquer techniques
- Searching: Basic searching techniques(linear, binary, ternary)
- Sorting: Basic sorting techniques(bubble, insertion, selection, quick, merge)
- Data Structures (I): Basic data structures with tree and graph intro
- Dynamic programming (I): intro with classical dp
- Greedy (I): intro with greedy concept
- Math (I): Basic math problems
- Geometry (I): Basic geometry problems
- String (I): Basic string manipulation in c/c++/java/python
- Brute Force (II): We'll talk about backtracking with pruning and etc.
- Divide and Conquer (II): We'll discuss segment tree and other things
- ...(continued)
We would try complete these parts as soon as possible. Then we would try to cover the second part(medium level) of each topic and then the third(maximum difficulty level) part of each topic.
The reason we are trying to cover these topic, is to build a basic for a beginner as soon as possible. But anyone, who is already experienced with problem solving, he/she can try out in any order he/she wants.