Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Tsinghua University

Combinatorics and Algorithms Design

Tsinghua University via XuetangX

Overview

Learn fundamental concepts and advanced techniques in combinatorial mathematics and algorithm design through this comprehensive course from Tsinghua University. Master key topics including magic squares, password security, permutations, combinations, generating functions, recurrence relations, Fibonacci sequences, Catalan numbers, and Stirling numbers. Explore essential algorithm design paradigms such as incremental algorithms, divide-and-conquer strategies, randomized algorithms, and dynamic programming. Apply mathematical principles to solve practical problems involving the inclusion-exclusion principle, pigeonhole principle, and algorithm complexity analysis. Develop skills in asymptotic analysis, loop invariants, and various algorithmic methods while working through hands-on examples like the majority element problem, Dutch national flag problem, merge sort, and knapsack optimization. Conclude with advanced topics in group theory, including Burnside's lemma, Polya's theorem, and applications to rotating polyhedrons, with regular homework assignments and demonstrations reinforcing learning throughout the course.

Syllabus

  • Introduction to Combinatorial Mathematics
    • What's Combinatorial Mathematics
    • The Most Ingenious Arrangement - Magic Square
    • Suffering Parchment Roll
    • Is Your Phone Password Safe
    • Brute-force Enumaration OR Abstract Conversion
    • Homework 1
    • Demo Of Week 1
  • Combinatorial trip of a Pingpong ball
    • Counting with "+" "-" "*" "/"
    • Permutation or Combination?
    • Various Permutations
    • Different Kinds of Combinations
    • Permutation In The Bell Ring
    • Homework 2
    • Demo Of Week 2
  • Generating Function
    • Generating Function & Counting Rules
    • Simple Application Of Generating Function
    • Integer Partition
    • Ferrers Diagram
    • Generating Function And Recurrence Relation
    • Homework 3
    • Demo of Week 3
  • Linear Homogeneous Recurrence Relation
    • Fibonacci Sequence
    • Application Of The Fibonacci Sequence
    • Linear Homogeneous Recurrence Relation
    • Examples
    • Homework Of Week 4
    • Demo Of Week4
    • Behind the scenes extra
  • Magical Sequences
    • Catalan Numbers
    • Exponential Generating Functions
    • Derangements
    • Stirling Numbers
    • Summary of Generating Function
    • Homework of Week 5
    • Demo of Week 5
  • Inclusion-Exclusion Principle And Pigeonhole Principle
    • Inclusion And Exclusion Principle
    • The Elegancy Of Inclusion-Exclusion Principle
    • New solutions to old problems
    • Pigeonhole Principle
    • Visible Pigeonholes
    • 6 People And Ramsey
    • Homework Of Week 6
  • Introduction to Algorithms Design
    • What is Algorithm?
    • Example: Majority Element
    • Algorihtm Complexity
    • Asymptotic Analysis
    • Homework of Week 7
  • Incremental Algorithms
    • Elements of Incremental Algorithms
    • Loop Invariant
    • Example: Insertion Sort
    • Example: 2-Color Dutch National Flag Problem
    • Homework of Week 8
  • Divide and Conquer
    • Design Paradigm
    • Example: Merge Sort
    • Example: Order Statistics: Select: Partition
    • Example: Order Statistics: Select: Linear Time
    • Substitution Method
    • Recursion Tree Method
    • The Master Method
    • Homework of Week 9
  • Randomized Algorithms
    • Indicator Random Variable
    • Hiring Problem
    • On-line Hiring Problem
    • Randomized Algorihtm
    • Example: Randomized Select
    • Example: Randomized Select Analysis
    • Homework of Week 10
  • Dynamic Programming
    • Maximum Subarray: D&C solution
    • Maximum Subarray: Dynamic Programming Solution
    • Optimization Problems: Knapsack and Matrix Chain Multiplication
    • Steps of Dynamic Programming (1&2 Recursively Define Optimal Solutions)
    • Steps of Dynamic Programming (3&4 Compute Optimal Solutions)
    • Summary
    • Homework of Week 11
  • Group (Optional)
    • Turnable World
    • Permutation Group
    • Burnside Lemma
  • Polya Theorem (Optional)
    • The Plight of Burnside Lemma
    • From Burnside to Polya
    • Rotating Polyhedron
    • Generating Functon Type of Polya Theorem
  • Final Exam
    • Final Exam

Taught by

Yuchun Ma and Ying Zhao

Tags

Reviews

Start your review of Combinatorics and Algorithms Design

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.