คู่มือโอลิมปิกคอมพิวเตอร์

Computer Olympiad Guide for Thai High School Students

เส้นทางเรียน Competitive Programming สำหรับนักเรียนไทย

อ่านตามลำดับค่าย สอวน. หรือค้นหาหัวข้อที่ต้องใช้ทบทวนได้ทันที เว็บไซต์นี้สร้างจาก source เดียวกับหนังสือใน book/content

เริ่มต้น

Course orientation

  1. โครงสร้างเนื้อหาการสอน

ค่าย 1: Programming Basics

C++ syntax, functions, recursion, and STL basics

  1. การเขียนโปรแกรมเชิงแข่งขัน
  2. Standard Template Library
  3. C++ Syntax
  4. Recursion
  5. Function

ค่าย 2: Data Structures

Core structures and complexity analysis

  1. Big O Notation
  2. Stack and Queue
  3. Linked List
  4. Dynamic Array
  5. Binary Tree
  6. Heap
  7. Priority Queue
  8. Binary Search Tree
  9. Set and Map
  10. Graph Structure
  11. Hash Table
  12. Review

ต่อยอด: Algorithms

Greedy, search, dynamic programming, and divide and conquer

  1. Greedy Algorithm
  2. Array Manipulation
  3. Search
  4. Dynamic Programming
  5. Ad-hoc Problems
  6. Divide and Conquer

Graph Algorithms

Graph traversal, ordering, paths, circuits, and applications

  1. Graph Algorithm
  2. Topological Sort
  3. Path and Circuit

เพิ่มเติม

Advanced notes and learning resources

  1. Dynamic Programming Advanced
  2. Resources