Tag Data Structure

Back to Basic: Fundamental Data Structure in C#

English Version: Back to Basic: Fundamental Data Structure in C# (English Version) สำหรับ Blog นี้ ผมเขียนมาประกอบกับ Talk ที่ลองส่งในงาน .NET Developer Day 2025 – Thailand ครับ โดยแรงบันดาลใจในการเขียนเรื่องนี้ มาจากที่ว่าช่วงเดือนที่แล้วได้เข้าไปช่วยดับไฟ ในส่วนของ Performance Test ซึ่งมันเป็นในส่วน WEB API / WinApp ด้วย โดยสาเหตุที่ทำให้ Process มันช้า เกิดจากการเลือก Data…

[MITx: 6.00.1x] Introduction to Computer Science and Programming Using Python (Week 6)

สำหรับ Blog ในตอนนี้ จากที่เรียนมาทั้งหมด พวกว่าทุกคนอยากให้ Code ที่เขียนขึ้นมามีแนวคิดการทำงานต่างกัน หรือที่มีคำเท่ห์ที่เรียกว่า Algorithm ส่วนทำได้มีประสิทธิผล( Performance) และถูกต้อง แล้วอะไรที่บอกว่าเร็วหละ ตอนนี้เน้นส่วนเรื่องที่บอกว่าเร็ว Performance ดี เรามองได้ใน 2 มุมมอง การมาวัดมันมีหลายแบบ เช่น จับเวลา, นับ Operation ที่ใช้ หรือแม้แต่การดูพื้นที่ที่ใช้ไป แต่มันมีปัญหาจุกจิกมากมาย ทั้งที่เรื่องจำนวนข้อมูลนำเข้า(Data Set) และ Enviroment(เช่น พวก Hardware ต่างๆ) ในทาง Computer Science ก็เลยมี Idea ในการวัดอีกแบบ…

Circular Queue

วันนี้ผมนำเสนอแปลกๆ นะ บทความวันนี้เสนอเรื่อง Circular Queue โดยนำเสนอในรูปแบบ Q&A นะครับ ลองติดดามได้นะครับ ^__^ Q: ทำไมถึงต้องมี Circular QueueA: เพราะ ว่างการใช้ queue แบบเดิม จะทำให้เสียเนื้อที่ใส่ส่วนด้านหน้าไป โดยเปล่าประโยชน์ หลังจากที่ enqueue ออกแล้ว ถึงแล้วว่าจะมีการสร้าง queue ใหม่ชึ้นมา ระบบก็จะจองเนื้อที่ในหน่วงความจำใหม่แทน ลองดูแผนภาพประกอบ Q: แล้วใช้ Circular Queue จะแก้ปัญหาในข้อที่แล้วได้อย่างไรA: ลองเปลี่ยนวิธีการเขียนจากการเขียนที่เรามองว่าคิว คือ แถวยาวๆ มามองให้เป็นวงกลม โดยมีการปรับเปลี่ยนในส่วนของโปรแกรม เพื่อสามารถที่จะทำ Circular…