PekingX: 算法基础 | Fundamental Algorithms

PekingX: 算法基础 | Fundamental Algorithms

by Peking University

Advanced Algorithms and Programming Course

Course Description

Welcome to the exciting world of algorithms and programming! This advanced-level course, offered by PekingX, is designed to take your computer science skills to the next level. Dive deep into the fundamental algorithms that power modern computing and learn how to apply them effectively in real-world scenarios.

What Students Will Learn

  • Master a wide range of essential algorithms, including enumeration, binary search, greedy algorithms, recursion, depth-first search, breadth-first search, and dynamic programming.
  • Understand the underlying principles of these algorithms and learn how to implement them accurately.
  • Develop the ability to apply these algorithms flexibly to solve complex problems.
  • Enhance critical thinking and hands-on programming skills through carefully designed programming tasks.
  • Gain a solid foundation in algorithmic thinking and strong programming implementation abilities.

Pre-requisites

  • Basic knowledge of computer science concepts (Introduction to Computing)
  • Proficiency in C programming language
  • High school level mathematics

Course Content

  • Enumeration algorithms
  • Recursive algorithms
  • Dynamic programming (two parts)
  • Depth-first search algorithms (two parts)
  • Breadth-first search algorithms
  • Binary search and greedy algorithms
  • Online judge problems for practical application
  • Programming exercises and online programming exams

Who This Course Is For

  • Computer science students looking to strengthen their algorithmic skills
  • Programmers aiming to improve their problem-solving abilities
  • Aspiring software developers preparing for technical interviews
  • Anyone interested in understanding the core principles behind efficient computing

Real-World Applications

  • Develop more efficient and optimized software solutions
  • Tackle complex computational problems in various industries
  • Improve performance in technical interviews for top IT companies
  • Enhance problem-solving skills applicable to a wide range of programming challenges
  • Contribute to cutting-edge research and development in computer science

Syllabus

Week 1: Enumeration algorithms
Week 2: Recursive algorithms
Week 3: Dynamic programming algorithms (Part 1)
Week 4: Dynamic programming algorithms (Part 2)
Week 5: Depth-first search algorithms (Part 1)
Week 6: Depth-first search algorithms (Part 2)
Week 7: Breadth-first search algorithms
Week 8: Binary search and greedy algorithms

Course Format

This course combines video lectures, online exercises, programming assignments, and online programming exams to provide a comprehensive learning experience. The primary programming language used in examples is C++, but students can complete assignments using C, C++, Java, or Pascal. By the end of this course, you'll have the skills and confidence to tackle complex algorithmic problems and stand out in the competitive world of computer science and software development.

Similar Courses
Course Page   PekingX: 算法基础 | Fundamental Algorithms