This course presents a group of elementary and advanced Algorithms and Programming Techniques. It is the result of my own experience as a trainer in the field of Competitive Programming, teacher, author and (many times) competitor. It is based on the most important theoretical issues and knowledge a student should master. The topics that are discussed stretch from Recursion and its different peculiar applications (Backtracking, Divide and Conquer) to the Branch and Bound method. The course has two different lessons dedicated to the Dynamic Programming Technique, due to the importance this method has.
This course presents a group of elementary and advanced Algorithms and Programming Techniques. It is the result of my own experience as a trainer in the field of Competitive Programming, teacher, author and (many times) competitor. It is based on the most important theoretical issues and knowledge a student should master. The topics that are discussed stretch from Recursion and its different peculiar applications (Backtracking, Divide and Conquer) to the Branch and Bound method. The course has two different lessons dedicated to the Dynamic Programming Technique, due to the importance this method has.
The course contains many well known problems, presents their solutions in a comprehensible way and offers C++ solutions. A clear purpose and objective that the author had in mind was to have neat statements, proper examples, efficient solutions, easy to understand C++ programs. I suppose that the students already have some elementary background in the C++ language, some experience with STL data structures and implemented methods, CodeBlocks Integrated Development Environment, Online Judges .
Each lesson is followed by some quizzes.
The students are advised to try to implement on their own the C++ programs for the problems they encounter in the lessons.
Every time when it was possible, I used some pictures, animations, free templates offered by different sites.
I hope you will enjoy and appreciate this course.
The classical Josephus' problem is analyzed. Some less known properties are highlighted.
This quiz is meant to test your understanding about what we just talked about.
Some questions about Backtracking algorithm
OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.
Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.
Find this site helpful? Tell a friend about us.
We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.
Your purchases help us maintain our catalog and keep our servers humming without ads.
Thank you for supporting OpenCourser.