fbpx
วิกิพีเดีย

การเรียงลำดับแบบแทรก

ในสาขาวิทยาการคอมพิวเตอร์ การเรียงลำดับแบบแทรก (อังกฤษ: insertion sort) เป็นขั้นตอนวิธีการเรียงลำดับอย่างง่าย ทำงานโดยจะแบ่งข้อมูลในรายการเป็นสองส่วนคือส่วนที่เรียงแล้วและส่วนที่ยังไม่เรียง แน่นอนว่าในตอนเริ่มแรกส่วนที่เรียงแล้วก็จะมีอย่างน้อยหนึ่งตัว และจะเริ่มหยิบข้อมูลตัวหนึ่งของส่วนที่ยังไม่เรียงมาเปรียบเทียบเพื่อหาตำแหน่งที่เหมาะสมในการแทรกลงในข้อมูลส่วนที่เรียงแล้ว ลักษณะเดียวกับการเรียงไพ่ในมือ และด้วยประสิทธิภาพ O(n2) ดังนั้นการเรียงลำดับแบบแทรกจึงไม่เหมาะในการทำงานในรายการที่มีจำนวนสมาชิกมากๆ ซึ่งขั้นตอนวิธีการเรียงลำดับซึ่งซับซ้อนกว่าเช่น การเรียงลำดับแบบเร็ว, การเรียงลำดับแบบผสาน, การเรียงลำดับแบบฮีป มีความเหมาะสมมากกว่า

การเรียงลำดับแบบแทรก
ตัวอย่างการเรียงลำดับแบบแทรกจากข้อมูลสุ่ม
ประเภทขั้นตอนวิธีการเรียงลำดับ
โครงสร้างข้อมูลรายการ
ประสิทธิภาพเมื่อเกิดกรณีแย่ที่สุด
ประสิทธิภาพเมื่อเกิดกรณีดีที่สุด
ประสิทธิภาพเมื่อเกิดกรณีทั่วไป
ปริมาณความต้องการพื้นที่เมื่อเกิดกรณีแย่ที่สุดใช้พื่นที่ เพิ่มเติม
ตัวอย่างอัลกอริทึมแบบแทรก

ขั้นตอนวิธี (อัลกอริทึม)

ตัวอย่างทีละขั้นตอน

การเรียงลำดับข้อมูลในรายการดังนี้ 3 9 8 7 6 ด้วยขั้นตอนวิธีแบบแทรก เริ่มต้นด้วยข้อมูลทุกตัวยกเว้นตัวแรกยังไม่ได้เรียง ข้อมูลที่อยู่ในเครื่องหมาย (..) ถือว่าเป็นข้อมูลที่เรียงจากน้อยไปมากแล้ว
ครั้งที่ 1
[ (3) 9 8 7 6 ]   [ (3 9) 8 7 6 ]
ครั้งที่ 2
[ (3 9) 8 7 6 ]   [ (3 9 8) 7 6 ]
[ (3 9 8) 7 6 ]   [ (3 8 9) 7 6 ]
ครั้งที่ 3
[ (3 8 9) 7 6 ]   [ (3 8 9 7) 6 ]
[ (3 8 9 7) 6 ]   [ (3 8 7 9) 6 ]
[ (3 8 7 9) 6 ]   [ (3 7 8 9) 6 ]
ครั้งที่ 4
[ (3 7 8 9) 6 ]   [ (3 7 8 9 6) ]
[ (3 7 8 9 6) ]   [ (3 7 8 6 9) ]
[ (3 7 8 6 9) ]   [ (3 7 6 8 9) ]
[ (3 7 6 8 9) ]   [ (3 6 7 8 9) ]
เรียงเสร็จเรียบร้อย

ตัวอย่างรหัสเทียม

begin insertionSort ( A : list of sortable items ) for i = 1 to length (A) - 1 item = A[i] cmpPos = i - 1 while cmpPos >= 0 and item < A[cmpPos] A[cmpPos + 1] = A[cmpPos] cmpPos = cmpPos - 1 end while A[cmpPos + 1] = item end for end 

การเร, ยงลำด, บแบบแทรก, ในสาขาว, ทยาการคอมพ, วเตอร, งกฤษ, insertion, sort, เป, นข, นตอนว, การเร, ยงลำด, บอย, างง, าย, ทำงานโดยจะแบ, งข, อม, ลในรายการเป, นสองส, วนค, อส, วนท, เร, ยงแล, วและส, วนท, งไม, เร, ยง, แน, นอนว, าในตอนเร, มแรกส, วนท, เร, ยงแล, วก, จะม, . insakhawithyakarkhxmphiwetxr kareriyngladbaebbaethrk xngkvs insertion sort epnkhntxnwithikareriyngladbxyangngay thanganodycaaebngkhxmulinraykarepnsxngswnkhuxswnthieriyngaelwaelaswnthiyngimeriyng aennxnwaintxnerimaerkswnthieriyngaelwkcamixyangnxyhnungtw aelacaerimhyibkhxmultwhnungkhxngswnthiyngimeriyngmaepriybethiybephuxhataaehnngthiehmaasminkaraethrklnginkhxmulswnthieriyngaelw lksnaediywkbkareriyngiphinmux aeladwyprasiththiphaph O n2 dngnnkareriyngladbaebbaethrkcungimehmaainkarthanganinraykarthimicanwnsmachikmak sungkhntxnwithikareriyngladbsungsbsxnkwaechn kareriyngladbaebberw kareriyngladbaebbphsan kareriyngladbaebbhip mikhwamehmaasmmakkwakareriyngladbaebbaethrktwxyangkareriyngladbaebbaethrkcakkhxmulsumpraephthkhntxnwithikareriyngladbokhrngsrangkhxmulraykarprasiththiphaphemuxekidkrniaeythisudO n 2 displaystyle O n 2 prasiththiphaphemuxekidkrnidithisudO n displaystyle O n prasiththiphaphemuxekidkrnithwipO n 2 displaystyle O n 2 primankhwamtxngkarphunthiemuxekidkrniaeythisudichphunthi O 1 displaystyle O 1 ephimetimdkhktwxyangxlkxrithumaebbaethrkkhntxnwithi xlkxrithum aekikhtwxyangthilakhntxn aekikh kareriyngladbkhxmulinraykardngni 3 9 8 7 6 dwykhntxnwithiaebbaethrk erimtndwykhxmulthuktwykewntwaerkyngimideriyng khxmulthixyuinekhruxnghmay thuxwaepnkhxmulthieriyngcaknxyipmakaelwkhrngthi 1 3 9 8 7 6 displaystyle to 3 9 8 7 6 khrngthi 2 3 9 8 7 6 displaystyle to 3 9 8 7 6 3 9 8 7 6 displaystyle to 3 8 9 7 6 khrngthi 3 3 8 9 7 6 displaystyle to 3 8 9 7 6 3 8 9 7 6 displaystyle to 3 8 7 9 6 3 8 7 9 6 displaystyle to 3 7 8 9 6 khrngthi 4 3 7 8 9 6 displaystyle to 3 7 8 9 6 3 7 8 9 6 displaystyle to 3 7 8 6 9 3 7 8 6 9 displaystyle to 3 7 6 8 9 3 7 6 8 9 displaystyle to 3 6 7 8 9 eriyngesrceriybrxy twxyangrhsethiym aekikh begin insertionSort A list of sortable items for i 1 to length A 1 item A i cmpPos i 1 while cmpPos gt 0 and item lt A cmpPos A cmpPos 1 A cmpPos cmpPos cmpPos 1 end while A cmpPos 1 item end for endekhathungcak https th wikipedia org w index php title kareriyngladbaebbaethrk amp oldid 9265600, wikipedia, วิกิ หนังสือ, หนังสือ, ห้องสมุด,

บทความ

, อ่าน, ดาวน์โหลด, ฟรี, ดาวน์โหลดฟรี, mp3, วิดีโอ, mp4, 3gp, jpg, jpeg, gif, png, รูปภาพ, เพลง, เพลง, หนัง, หนังสือ, เกม, เกม