วิทย์ม.ต้น: รู้จักกับวิธีเรียงลำดับข้อมูล (Sorting) นั่งปรับปรุงและ debug โปรแกรม Scratch กันต่อ

วันนี้เด็กม.3 ได้รู้จักวิธีเรียงลำดับข้อมูลกันครับ  วิธีมีหลากหลาย แต่ละวิธีก็ใช้เวลาต่างๆกันเมื่อเรียงลำดับข้อมูลแบบต่างๆ ตอนแรกผมถามเด็กว่าถ้ามีหนังสือเยอะๆแล้วจะเรียงตามลำดับชื่อหนังสือจะทำอย่างไร ปรากฎว่าเด็กๆคิดสักพักแล้วก็บอกวิธีอยู่ในตระกูล Radix Sort คือกรุ๊ปตามตัวอักษรตัวแรกว่าอยู่ในกลุ่ม ก-ฮ, A-Z ซะเลย แล้วทำอย่างเดิมในแต่ละกรุ๊ปตัวอักษรแต่ใช้ตัวอักษรตัวถัดๆมาในชื่อ (เหมือน Recursive Radix Sort)

ต่อมาเด็กๆได้ดูคลิปอธิบาย Bubble Sort, Insertion Sort, และ Quick Sort ใน TED-ED ได้รู้จักวิธีแบ่งปัญหาให้เล็กลงแล้วแก้ด้ววิธีเดิม (Divide and Conquer + Recursion) จาก Quick Sort:

เด็กๆได้ดูภาพเคลื่อนไหวเปรียบเทียบวิธีเรียงลำดับแบบต่างๆที่เพจ Sorting Algorithms Animations ครับ เข้าไปกดดูกันนะครับ หน้าตาจะเป็นประมาณนี้ครับ:

จากเว็บ Sorting Algorithms Animations https://www.toptal.com/developers/sorting-algorithms
จากเว็บ Sorting Algorithms Animations https://www.toptal.com/developers/sorting-algorithms

มีคนทำเรื่อง Sorting ไว้ด้วยภาษา Scratch เยอะเหมือนกันครับ กดเข้าไปดูได้ที่ Sorting Algorithms ครับ

จากนั้นเด็กๆทั้งม.1, 2, 3 ก็นั่งเขียนโปรแกรม Scratch กันต่อครับ พยายามทำให้เกมต่างๆสนุกขึ้น และมีบั๊กน้อยลง พยายามจัดการโปรแกรมว่าไม่ควรเขียนอะไรซ้ำกัน ถ้าจะทำอะไรควรทำจากที่เดียว จะได้รู้แน่นอนว่าเกิดอะไรขึ้นในโปรแกรมครับ

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.