Notes & software courses · Free to learn
Aph's Blog
On this page

แผนฝึก Coding (Study Plan)

👋 อ่านฟรีทั้งหมดบน Aph's Blog — เนื้อหาภาษาไทย ทำตามทีละหน้าใน sidebar ได้เลย หากมีข้อเสนอแนะหรืออยากให้เพิ่มหัวข้อไหน บอกได้เสมอ

ฝึกอย่างมีระบบตามหัวข้อ ดีกว่าสุ่มทำโจทย์ไปเรื่อย ๆ

ข้อผิดพลาดที่พบบ่อยคือเปิด LeetCode แล้วสุ่มทำโจทย์ไปเรื่อย ๆ วิธีที่ได้ผลกว่าคือฝึกเป็นหัวข้อ (topic-based) ทำให้สมองจับรูปแบบ (pattern) ได้ และเมื่อเจอโจทย์ใหม่จะนึกออกว่าใช้เทคนิคไหน

หลักการฝึกที่ได้ผล

  1. ฝึกทีละหัวข้อจนเข้าใจ pattern ก่อนข้ามไปหัวข้อใหม่
  2. ลองคิดและเขียนเองให้สุดก่อนดูเฉลยเสมอ (อย่างน้อย 20-30 นาที)
  3. หลังดูเฉลย ให้ปิดแล้วเขียนใหม่เองอีกรอบจนคล่อง
  4. จดโจทย์ที่ทำผิดไว้ แล้วกลับมาทำซ้ำใน 1 สัปดาห์ (spaced repetition)
  5. จับเวลาเมื่อเริ่มคล่อง เพื่อจำลองบรรยากาศจริง

ลำดับหัวข้อที่แนะนำ (คลิกเพื่อเข้าบทเรียน)

เรียงจากง่ายไปยาก หัวข้อแรก ๆ เป็นพื้นฐานของหัวข้อถัด ๆ ไป — คลิกแต่ละหัวข้อเพื่อเข้าไปเรียนพร้อมโค้ดตัวอย่างได้เลย

  1. Array, String & Matrix (two pointers, sliding window)
  2. Hash Table (นับ จับคู่ ค้นหา O(1))
  3. Linked List
  4. Stack & Queue
  5. Recursion & Backtracking
  6. Tree & Binary Search Tree (BFS/DFS)
  7. Graph (BFS/DFS, topological sort)
  8. Heap / Priority Queue
  9. Binary Search
  10. Dynamic Programming
ทำกี่ข้อถึงพอ?

คุณภาพสำคัญกว่าปริมาณ การทำ 100-150 ข้อที่เข้าใจ pattern จริง ๆ ดีกว่าทำ 500 ข้อแบบผ่าน ๆ ถ้าเข้าใจหัวข้อด้านบนครบ คุณพร้อมสำหรับสัมภาษณ์ส่วนใหญ่แล้ว

ใช้ curated list ไม่ต้องสุ่มเอง

แทนที่จะเดาว่าจะทำข้อไหน ใช้ลิสต์ที่คนคัดมาแล้ว ครอบคลุม pattern สำคัญในจำนวนข้อที่พอดี

  • Grind 75 — ปรับจำนวนข้อตามเวลาที่เหลือได้ เรียงตามความสำคัญ
  • NeetCode 150 — จัดกลุ่มตาม pattern พร้อมวิดีโอเฉลย
  • Blind 75 — ลิสต์คลาสสิกครอบ pattern หลักใน 75 ข้อ

เป้าหมายจำนวนโจทย์

ระดับจำนวนแนะนำเวลาต่อข้อที่ควรทำได้
Easy30+ ข้อ15-20 นาที
Medium50+ ข้อ30-35 นาที
Hard5-10 ข้อ (เฉพาะถ้าเล็ง big-tech)ฝึกคิด ไม่ต้องครบทุกข้อ

ตัวอย่างโจทย์ที่ควรทำให้ได้

  • Two Sum, Valid Parentheses, Best Time to Buy and Sell Stock (easy)
  • Longest Substring Without Repeating Characters, 3Sum, Number of Islands (medium)
  • Binary Tree Level Order Traversal, Coin Change, Course Schedule (medium)
  • LRU Cache, Merge Intervals, Implement Trie (medium-hard)

แพลตฟอร์มฝึก

  • LeetCode — มาตรฐานอุตสาหกรรม มีโจทย์แยกหัวข้อและบริษัท
  • NeetCode — จัดกลุ่มโจทย์ตาม pattern พร้อมวิดีโออธิบาย
  • HackerRank — เหมาะฝึกสำหรับ OA