fbpx
วิกิพีเดีย

Bogosort

Bogo Sort คือ ขั้นตอนวิธีการเรียงลำดับแบบสุ่มโดยมีวิธีคิดว่า สมมุติว่าเรามีจำนวนเลขอยู่1ชุดให้เราทำการสุ่มชุดตัวเลขที่มีอยู่จากนั้นให้เราทำการตรวจสอบว่าตัวเลขที่สุ่มมีการเรียงลำดับหรือไม่ หากยังไม่เรียงลำดับให้เราทำการสุ่มชุดตัวเลขไปเรื่อยๆ จนกว่าชุดตัวเลขจะทำการเรียงลำดับจนเสร็จสมบูรณ์

ตัวอย่าง

สมมุติว่าเรามีจำนวนชุดตัวเลข ( 5 1 4 2 8 )

สุ่มตัวเลขครั้งที่ 1 ( 8 5 1 4 2) สุ่มตัวเลขครั้งที่ 2 ( 5 8 4 1 2)

สุ่มตัวเลขครั้งที่ 3 ( 2 4 1 5 8) สุ่มตัวเลขครั้งที่ n ( 1 2 4 5 8)

เราสามารถทำการเรียงลำดับจนเสร็จสมบูรณ์ได้ ( 1 2 4 5 8)

การนำ Bogo Sort ไปใช้งานในภาษาPython

ตัวอย่างภาษาไพทอน

def bogosort(collection):    def isSorted(collection):  if len(collection) < 2:  return True  for i in range(len(collection) - 1):  if collection[i] > collection[i + 1]:   return False  return True   while not isSorted(collection):  random.shuffle(collection)   return collection 

จากโค้ดข้างบนจะมีความซับซ้อน(complexity)เป็น O(n!) เพราะเป็นการเรียงแบบสุ่ม ไม่มีกฏเกณฑ์ที่ชัดเจน หากคำนวณมันเป็นเรียงสลับเปลี่ยนตำแหน่งที่เป็นไปได้ของข้อมูลทั้งหมด (n!)

อ้างอิง

  • BogoSort on WikiWikiWeb

bogosort, งก, ามภาษา, ในบทความน, ไว, ให, านและผ, วมแก, ไขบทความศ, กษาเพ, มเต, มโดยสะดวก, เน, องจากว, เด, ยภาษาไทยย, งไม, บทความด, งกล, าว, กระน, ควรร, บสร, างเป, นบทความโดยเร, วท, ดบทความน, องการการจ, ดหน, ดหมวดหม, ใส, งก, ภายใน, หร, อเก, บกวาดเน, อหา, ให, ณภา. lingkkhamphasa inbthkhwamni miiwihphuxanaelaphurwmaekikhbthkhwamsuksaephimetimodysadwk enuxngcakwikiphiediyphasaithyyngimmibthkhwamdngklaw krann khwrribsrangepnbthkhwamodyerwthisudbthkhwamnitxngkarkarcdhna cdhmwdhmu islingkphayin hruxekbkwadenuxha ihmikhunphaphdikhun khunsamarthprbprungaekikhbthkhwamniid aelanapayxxk phicarnaichpaykhxkhwamxunephuxchichdkhxbkphrxngBogo Sort khux khntxnwithikareriyngladbaebbsumodymiwithikhidwa smmutiwaeramicanwnelkhxyu1chudiherathakarsumchudtwelkhthimixyucaknniherathakartrwcsxbwatwelkhthisummikareriyngladbhruxim hakyngimeriyngladbiherathakarsumchudtwelkhiperuxy cnkwachudtwelkhcathakareriyngladbcnesrcsmburntwxyang aekikhsmmutiwaeramicanwnchudtwelkh 5 1 4 2 8 sumtwelkhkhrngthi 1 8 5 1 4 2 sumtwelkhkhrngthi 2 5 8 4 1 2 sumtwelkhkhrngthi 3 2 4 1 5 8 sumtwelkhkhrngthi n 1 2 4 5 8 erasamarththakareriyngladbcnesrcsmburnid 1 2 4 5 8 karna Bogo Sort ipichnganinphasaPython aekikhtwxyangphasaiphthxndef bogosort collection def isSorted collection if len collection lt 2 return True for i in range len collection 1 if collection i gt collection i 1 return False return True while not isSorted collection random shuffle collection return collectioncakokhdkhangbncamikhwamsbsxn complexity epn O n ephraaepnkareriyngaebbsum immikteknththichdecn hakkhanwnmnepneriyngslbepliyntaaehnngthiepnipidkhxngkhxmulthnghmd n xangxing aekikhBogoSort on WikiWikiWebekhathungcak https th wikipedia org w index php title Bogosort amp oldid 8588542, wikipedia, วิกิ หนังสือ, หนังสือ, ห้องสมุด,

บทความ

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