11 กันยายน 2552

DTS_10 09/09/2552

สรุปบทเรียนเรื่อง Sorting

การเรียงลำดับ(sorting)เป็นการจัดให้เป็นระเบียบ
มีแบบแผนช่วยให้การค้นหาสิ่งของหรือข้อมูลสามารถทำได้
รวดเร็วมีประสิทธิภาพ
วิธีการเรียงลำดับสามารถแบ่งเป็น 2 ประเภท คือ
1) การเรียงลำดับแบบภายใน(internal sorting)
เป็นการเรียงลำดับที่ข้อมูลทั้งหมดต้องอยู่ในหน่วยความจำหลัก
เวลาที่ใช้ในการเรียงลำดับจะคำนึงถึงเวลาที่ใช้ในการเปรีย
บเทียบและเลื่อนข้อมูลภายในความจำหลัก
2) การเรียงลำดับแบบภายนอก(external sorting)
เป็นการเรียงลำดับข้อมูลที่เก็บอยู่ในหน่วยความจำสำรองซึ่งเป็น
การเรียงลำดับข้อมูลในแฟ้มข้อมูล(file)เวลาที่ใช้ในการเรียงลำดับ
ต้องคำนึงถึงเวลาที่เสียไประหว่างการถ่ายเทข้อมูลในหน่วยความจำ
สำรองนอกเหนือจากเวลาที่ใช้ในการเรียงลำดับข้อมูลแบบภายใน

ประเภทของการเรียงลำดับ

- การเรียงลำดับแบบเลือก (selection sort)เป็นการเลือกข้อมูลที่มี
ค่ามากหรือน้อยที่สุดไปเก็บไว้ในตำแหน่งที่ 1 แล้วก็ทำแบบเดิมไปเรื่อยๆฃ
นกระทั่งครบทุกข้อมูลก็จะได้ลำดับจากน้อยไปมากหรือมากไปน้อยตามที่ต้องการ
- การเรียงลำดับแบบฟอง (Bubble Sort)เป็นการเรียงลำดับโดยการเลือก
คู่ข้อมูลจากหน้าหรือหลังก็ได้แล้วก็เลือกว่าจะเรียงจากน้อยไปมากหรือมากไปน้อย
โดยการเปรียบเทียบข้อมูลที่เลือกทั้งสองตัวแล้วสลับตำแหน่งกันเพื่อจะได้นำ
ไปเปรียบเที่ยบในตำแหน่งต่อไปจนครบ
- การเรียงลำดับแบบเร็ว (quick sort)
-การเรียงลำดับแบบแทรก (insertion sort)เป็นการเรียงลำดับข้อมูล
แบบเลือกคู่ข้อมูลจากหน้าหรือหลังก็ได้แล้วนำข้อมูลถัดไปมาเปรียบเทียบกัน
ระหว่างข้อมูลทั้งสองว่าจะวางในตำแหน่งใดทำจนครบทุกข้อมูล
- การเรียงลำดับแบบฐาน (radix sort)เป็นการเรียงลำดับโดยพิจารณา
จากฐานตัวเลขโดยเริ่มจาก 0 ถึง9 โดยรอบแรกให้พิจารณาในหลักหน่วยและ
เรียงลำดับหลักไปจนครบตามจำนวนข้อมูลก็จะได้เลขที่เรียงลำดับโดยอัตโนมัติ