เรียนรู้โครงสร้างข้อมูล Data Structure ตอนที่ 1 โครงสร้างข้อมูลสำคัญไฉน

เมื่อกล่าวถึงเรื่อง "โครงสร้างข้อมูล" เหล่าผู้กล้า นักงมโค๊ดมือใหม่ คงปฎิเสธไม่ได้ที่จะต้องเปิดตำราร่ายคาถาอัลกอริทึมต่างๆ ยากนักที่จะระลึกได้ด้วยตนเอง อ่ะห๊ะ ไปกันใหญ่ !!!

ที่กระผมจะสื่อก็คือถ้ามองในมุมมองของผู้เริ่มต้นแล้ว เรื่องโครงสร้างข้อมูลมันอาจจะดูยากและซับซ้อนเกินกว่าที่จะเข้าใจ แต่ถ้าลองได้ศึกษาการทำงานของมันจริงๆ หรือได้ผ่านการเขียนโปรแกรมที่ซับซ้อนกันมาบ้างแล้ว โครงสร้างข้อมูลก็ถือเป็นเรื่องจิ๊บๆไปเลย

จิ๊บๆเพราะอะไร ? เพราะว่าเราแค่เพียงเข้าใจ Concept ของอัลกอริทึม รู้ว่าควรใช้โครงสร้างใดในกรณีไหน และเมื่อไหร เราก็สามารถเรียกใช้งานได้ทันที ผ่านภาษาคลาสสิคต่างๆ ที่เป็นที่นิยมในปัจจุบัน และมีไลบราลี่ของโครงสร้างข้อมูลให้เรียกใช้ง่ายๆ

กลับมาที่ชื่อตอนของเราก่อน "โครงสร้างข้อมูลสำคัญไฉน" ไม่ใช้ได้ป่ะ ?
คำตอบคือ ได้ ในกรณีที่โปรแกรมไม่ซับซ้อนอะไร แต่ถ้าโปรแกรมมีความซับซ้อน หรือต้องการโปรแกรมที่มีความสามารถสูง เช่นค้นหาข้อมูลเร็วๆ เก็บข้อมูลจำนวนมาก เป็นต้น อันนี้ก็จำเป็นต้องใช้โครงสร้างข้อมูลมาเป็นตัวช่วย

คร่าวๆบทแรก กระผมก็จะไม่อะไรมาก คิดว่าเรื่องโครงสร้างข้อมูลก็จะเขียนออกมาหลายๆตอน เจาะลึกกันไปเลยว่า Array, Stack, Queue, List แบบต่างๆ, Searching, Sorting, Tree ทำงานกันยังไง และอาจจะมีอย่างอื่นมาเพิ่มอีก ตอนนี้นึกไม่ออก

โดยการอธิบายโค๊ดกระผมจะใช้ภาษา C++ เป็นตัวดำเนินเรื่องราวล่ะกันเนอะ คิดว่าภาษาไหนๆก็เหมือนกัน ต่างกันแค่ syntax แค่นั้นแหละ และเดี๋ยวจะฝากโค๊ดไว้ที่ Pastbin เช่นเคยให้ไป download กันครับ

ใครสนใจเรื่อง Data Struct อยากสอบถามส่วนที่ไม่ได้เขียนไว้ก็ส่งคำถามเข้ามาได้ ผ่าน Inbox แฟนเพจนะครับ หรือถ้าอ่านภาษาอังกฤษได้แนะนำ opendatastructures.org

Credit : http://commons.wikimedia.org/wiki/File:Min-heap_heapify.svg

Popular posts from this blog

วิธีตรวจสอบข้อมูลภาษีของตัวเอง รายได้ทั้งปี และค่าลดหย่อน จบครบที่เดียว

คำถามจิตวิทยา และจริยธรรม เมื่อผมสามารถสับสวิตซ์รถไฟ และต้องเลือกชนใครสักคน

วิธีสร้างแรงบันดาลใจ TED Talks คืออะไร ? และทำไมคุณควรต้องดู ?

ฝากโค๊ด Online ด้วย Pastebin กันเถอะครับ !!

"yes" "yeah" "yep" เหมือนและต่างกันอย่างไร ?