วันอังคารที่ 15 กันยายน พ.ศ. 2552

DTS 10-09/09/52

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

ไม่มีความคิดเห็น:

แสดงความคิดเห็น