เลือกหัวข้อจากแถบเมนูด้านซ้าย (กรณีหน้าจอเล็กเมนูจะหดกลายเป็นสัญลักษณ์สามขีดอยู่ในแถบเมนูด้านบน) หรือใส่คำค้นหาที่ช่องด้านล่างนี้ เพื่อค้นหาหัวข้อบทความหรือ Tutorial เกี่ยวกับเรื่อง เส้นทาง ที่ต้องการ
การจัดคิวข้อมูลเป็นหนึ่งในกลยุทธ์ที่สำคัญในการจัดการข้อมูลที่มีปริมาณมาก โดยเฉพาะเมื่อต้องการจัดเก็บข้อมูลแบบเปลี่ยนแปลงได้ (mutable data) และมีการเข้าถึงข้อมูลอย่างต่อเนื่อง (sequential access) หรือเมื่อต้องการควบคุมการเข้าถึงข้อมูลเพื่อให้มีประสิทธิภาพมากขึ้น ในบทความนี้เราจะพูดถึงหลักการของการจัดคิวข้อมูล ส่วนประกอบของแผนผังการจัดคิว และวิธีการสร้างเส้นทางในการใช้งานแผนผังการจัดคิวเพื่อเพิ่มประสิทธิภาพของระบบการจัดคิวข้อมูล...
Read More →ในโลกของอัลกอริธึมที่หลากหลาย มีหนึ่งอัลกอริธึมที่แข็งแกร่ง และเป็นที่ไว้วางใจเมื่อต้องการคำตอบสำหรับปัญหาเส้นทางที่สั้นที่สุด นั่นคือ Bellman Ford Algorithm แต่เอาล่ะ, ก่อนที่เราจะมุ่งหน้าสู่งานเข้าลึก ไปดื่มด่ำกับโค้ดสวยๆในภาษา C++ และไขข้อสงสัยทั้งหลายเกี่ยวกับอัลกอริธึมนี้กัน เรามาทำความรู้จักกับพื้นฐานของ Bellman Ford กันก่อนดีกว่า!...
Read More →บรูท ฟอร์ซ (Brute Force) หรือ การใช้ความพากเพียร ในภาษา C++ เป็นวิธีการแก้ปัญหาที่เรียบง่ายและตรงไปตรงมาอย่างยิ่ง เราจะมาทำความเข้าใจพื้นฐานของอัลกอริทึมนี้ รวมทั้งข้อดี-ข้อเสีย และการประยุกต์ใช้ในโลกจริงกันในบทความนี้...
Read More →ในโลกที่ซับซ้อนเต็มไปด้วยโครงข่ายทางเลือกบนเครือข่ายดิจิทัลและกายภาพ การหาเส้นทางที่ดีที่สุดจากจุด A ไปยังจุด B สามารถเป็นเรื่องท้าทาย คำถามนี้ได้ถูกทำให้เป็นประเด็นพื้นฐานในหลากหลายสาขาวิทยาศาสตร์และวิศวกรรม และหนึ่งในเครื่องมือที่ทรงพลังที่สุดในการหาคำตอบคือ *Dijkstra Algorithm*....
Read More →ในโลกของการเขียนโปรแกรม การเลือกอัลกอริทึมที่เหมาะสมจะช่วยให้การแก้ปัญหาเป็นไปอย่างรวดเร็วและมีประสิทธิภาพ หนึ่งในอัลกอริทึมที่มีชื่อเสียงและมีประโยชน์อย่างมากคือ Bellman-Ford Algorithm ซึ่งถือเป็นกุญแจสำคัญในการแก้ปัญหาเส้นทางที่ยาวที่สุดและเส้นทางที่สั้นที่สุดในกราฟที่มีน้ำหนักซึ่งอาจจะแสดงถึงระยะทาง, ต้นทุน, เวลา, หรือค่าใช้จ่ายอื่นๆ...
Read More →ในโลกแห่งการคำนวณ ปัญหาเรื่องของการค้นหาเส้นทางที่สั้นที่สุด (Shortest Path Problem) ถือเป็นหัวใจหลักของอลกอริธึมหลายประเภท ไม่ว่าจะเป็นในเครือข่ายคอมพิวเตอร์, การวางแผนทางหลวง, หรือแม้กระทั่งในเกมหาทางออกของเขาวงกต อัลกอริธึมหนึ่งที่เป็นที่รู้จักและได้รับความนิยมในการแก้ปัญหานี้คือ อัลกอริธึมของไดจ์กสตร้า (Dijkstras Algorithm) ซึ่งถูกคิดค้นขึ้นโดย Edsger W. Dijkstra ในปี 1956...
Read More →วันนี้เราจะมาลุยกับหนึ่งในปริศนาโลกคอมพิวเตอร์อีกหน้าขาดrai ? B* Algorithm. คำถามแรกที่หลายคนอยากรู้คงจะเป็น B* Algorithm คืออะไรกันแน่? B* Algorithm เป็นวิธีการทางคอมพิวเตอร์ที่ใช้แก้ปัญหาการค้นหาเส้นทางที่ดีที่สุดใน graph หรือ network ที่มีหลายโหนด และหลายเส้นทางในการเดินทางจากจุดหนึ่งไปยังอีกจุดหนึ่ง หลังจากที่เราเข้าใจกันแล้วว่ามันคืออะไร ก็ถึงเวลาที่จะพานักเรียนของเราที่ EPT ไปดูกันว่า B* Algorithm มีจุดเด่นและจุดอ่อนอย่างไร พร้อมกับ usecase ที่น่าสนใจ...
Read More →การเดินทางมักเต็มไปด้วยทางเลือกและโอกาส, A* Algorithm (หรือ A Star Algorithm) ก็คือหนึ่งในเครื่องมือที่เปรียบเสมือนโคมไฟนำทางในดินแดนของข้อมูลและกราฟที่ว่างแผ่ซ่านไปด้วยจุดต่างๆที่เรียกว่า Nodes. เนื้อหาบทความนี้จะเสนอมุมมองใหม่ในการมอง Algorithm นี้เสมือนเป็นนวัตกรรมที่ช่วยหาเส้นทางแห่งความสำเร็จในโลกการเขียนโปรแกรม, เพื่อโน้มน้าวให้ผู้อ่านได้รับรู้ถึงความสำคัญของการเรียนรู้การเขียนโปรแกรมที่โรงเรียน EPT ที่พร้อมจะพาท่านไปยังจุดหมายทางด้านความรู้....
Read More →เมื่อพูดถึงโลกของการเขียนโปรแกรม หนึ่งในด้านที่น่าสนใจคือความสามารถในการหาทางแก้ไขปัญหาที่มีความซับซ้อนด้วยวิธีการคำนวณและอัลกอริธึมที่แม่นยำ หนึ่งในอัลกอริธึมที่ได้รับความสนใจคือ B* Algorithm ? เป็นอัลกอริธึมที่ใช้ในการค้นหาเส้นทางหรือการตัดสินใจทางเลือกที่ดีที่สุด อัลกอริธึมนี้ถูกพัฒนาให้มีประสิทธิภาพสูง แต่ก็มีความซับซ้อนที่จำเป็นต้องพิจารณาอย่างละเอียด...
Read More →กราฟ (Graph) ในทางคอมพิวเตอร์ คือโครงสร้างข้อมูลที่ใช้เพื่อสร้างรูปแบบการเชื่อมโยงระหว่างจุดต่างๆ ที่เรียกว่า โหนด (Nodes) หรือ จุดยอด (Vertices), และเส้นที่เชื่อมระหว่างจุดเหล่านั้นเรียกว่า เส้นเชื่อม (Edges). สำหรับอักขระใดๆ ที่นำมาใช้เสมือนจุดยอดและเส้นเชื่อมนี้ ก็ถือเป็นการแทนการเชื่อมโยงที่สามารถนำไปใช้วิเคราะห์หาคำตอบในทางปัญหาหลากหลายรูปแบบได้...
Read More →เคยสงสัยไหมครับว่าพวก Google Maps หรือแอพนำทางรถยนต์วิ่งมาจากไหนได้ หรือเคยสงสัยไหมว่า Facebook หรือ Instagram แนะนำเพื่อนใหม่ให้เรารู้จักได้อย่างไร? ตอนที่คุณค้นหาเส้นทางหรือโต้ตอบกับเพื่อนๆ ในโลกออนไลน์นั้น, มี กราฟ ซ่อนอยู่เบื้องหลังทำงานอย่างขยันขันแข็ง?และนั่นคือที่มาของ Graph Algorithms (อัลกอริทึมกราฟ) นั่นเองครับ!...
Read More →ใครที่เป็นเด็กหรือผู้ใหญ่ก็คงเคยวาดรูปเชื่อมจุดด้วยเส้นๆ ของเกมส์เชื่อมจุดนั่นแหละคือตัวอย่างของ Graph Theory หรือทฤษฎีกราฟในแบบฉบับง่ายๆ เลยทีเดียว และมันมีพื้นฐานทางคณิตศาสตร์ที่สำคัญมากในโลกของโปรแกรมมิ่งด้วยนะ วันนี้เราจะมาเรียนรู้กันว่า Graph Theory มีอะไรพิเศษ พร้อมยกตัวอย่างการใช้ในโปรแกรมมิ่งอย่างไรบ้าง...
Read More →หัวข้อ: สร้างกราฟทิศทางง่ายๆ ด้วย Linked List ในภาษา C...
Read More →สวัสดีครับผู้อ่านที่น่าสนใจทุกท่าน! วันนี้เราจะมาร่วมกันสำรวจโลกของการสร้างกราฟอย่างง่ายในภาษา C โดยใช้โครงสร้างข้อมูลที่เรียกว่า Linked List ในการเก็บข้อมูลของกราฟประเภท Undirected Graph หรือกราฟที่ไม่มีทิศทางครับ...
Read More →หัวข้อ: สร้างกราฟที่ไม่มีทิศทางด้วยตนเองโดยใช้ Linked List เป็น Adjacency List...
Read More →การสร้างกราฟทิศทาง (directed graph) แบบกำหนดโครงสร้างเองในภาษา Perl โดยไม่ใช้ไลบรารีภายนอกสามารถทำได้โดยการใช้ linked list สำหรับการแทนข้อมูล adjacency (Adj). หากคุณเป็นผู้ที่ชื่นชอบการเรียนรู้เกี่ยวกับโครงสร้างข้อมูลและการโปรแกรมมิ่ง บทความนี้จะพาคุณไปสำรวจว่าอย่างไรการทำงานในระดับลึก และการประยุกต์ใช้กราฟทิศทางในการแก้ปัญหาโลกแห่งความจริง รวมทั้งวิธีการสร้างมันขึ้นมาด้วย Perl ซึ่งอาจเป็นโอกาสที่ดีที่จะสำรวจหลักสูตรที่ EPT ของเราได้เช่นกัน!...
Read More →การทำงานกับกราฟนั้นเป็นหัวใจสำคัญในด้านของวิทยาการคอมพิวเตอร์และมีการใช้งานอย่างแพร่หลายในโลกปัจจุบัน ตั้งแต่การวิเคราะห์เครือข่ายโซเชียลมีเดียไปจนถึงการเสาะหาเส้นทางที่ดีที่สุดในแอปพลิเคชัน GPS ในบทความนี้เราจะมาสำรวจการสร้างกราฟทิศทางด้วยตัวเองในภาษา Rust โดยใช้เมทริกซ์ (Matrix) แทนที่จะใช้ Adjacency List แบบดั้งเดิม พร้อมให้คำแนะนำผ่านตัวอย่างโค้ดและนำเสนอการใช้งานในโลกจริง...
Read More →