pnwt.bid
Published on

สรุปเนื้อหาจากหนังสือ Grokking algorithms | prologue

Authors

Overview

เนื่องจากในช่วงนี้ผมเริ่มหันกลับมาทบทวน เรื่องของ Data structure & Algorithms (DSA) มากขึ้นอีกครั้ง เพราะเรื่องนี้ค่อนข้างเป็นเรื่องที่มีความสำคัญมาก ในการเขียนโปรแกรม (ในขณะที่คนอื่นเขาไปAI กันหมดแล้วว) จึงลองไปเดินหาหนังสือที่จะช่วยอธิบายในเรื่องของ DSA แบบที่เข้าใจง่ายๆ ไม่ซับซ้อน ไม่อยากได้แบบที่มีตัวหนังสือ เต็มหน้ากระดาษ และ ไม่อยากได้แบบที่มีแต่ กราฟ หรือ code example เยอะๆ

เลยได้มาเจอเล่มนี้(หลายๆท่านอาจจะเคยอ่านมาบ้างแล้ว เพราะน่าจะออกมาซักพักแล้ว) เห็นหน้าปกแล้วรู้สึกว่าค่อนข้างเป็นมิตร เลยลองเปิดอ่านดู

พบว่า เป็นมิตรจริงๆ ทั้งอธิบายเรื่อง Big O Notation แบบเข้าใจง่ายๆ, อธิบายเรื่อง Liner search vs Binary search ในรูปแบบของ รูปภาพ ยกตัวอย่างแบบง่ายๆ ให้เราเกทแบบ ถ่องแท้ มากกว่าการท่องจำ หรือ จำโค้ด

จากที่เกริ่นมาซะยาวเนี่ย ผมจะขอมาสรุปความเข้าใจ เรื่องราวที่ผมได้อ่านจากหนังสือเล่มนี้โดยจะไม่ลง code เลย จะเน้นไปในทาง ทฤษฏีมากกว่า ให้เข้าใจ concept และนำไปต่อยอดเอง โดยในแต่ละ EP โดยจะมีเนื้อหาคร่าวๆดังนี้

  • Big O notation | Linear search vs Binary search | Time complexity
  • How memory works ? | Selection sort
  • Recursion | Quick sort
  • Hash tables
  • Bread-first-search
  • Depth-first-search
  • Balanced Trees
  • Dijkstra’s algorithm
  • Greedy algorithm
  • Dynamic programming

เนื้อหาแบบคร่าวๆ ที่คาดไว้มีประมาณนี้ โดยจะแบ่งมาเขียนเป็น หลายๆ EP ครับ โดยใน EP หน้า จะเริ่มด้วยเรื่องพื้นฐานที่สุดเลยคือ Big O Notation ว่าคืออะไร และทำไมเราต้องทำความเข้าใจกับสิ่งนี้ด้วย

หากใครสนใจ ไปตำกันได้ที่

Thanks for reading !