Code ของ การจัดเรียงแบบหวี

ตัวอย่างการเขียนโปรแกรมด้วย ภาษาไพทอน (Python)

def CombSort(array):    array_len = len(array)    value = len(array)    while value != 1 :        value = int(value // 1.3)        for count in range(0,array_len -value):            if array[count] >= array[count + value]:                array[count],array[count + value] = array[count + value], array[count]    return arrayarray = [9,18,15,20,0,3,7]print(CombSort(array))
Big O

จาก Code ด้านบนจะมีการทำงานวนลูปจำนวน 2 ลูปคือลูป while และ for โดยในแต่ละลูปจะมีค่า Big O ดังนี้

while value != 1 : จะได้ => O(n)

for index in range(0,array_len - value): จะได้ => O(n)

ลูป for อยู่ในลูป while จะนำมาคูณกันได้สมการคำตอบคือ

>>> O(n) * O(n) = O(n2)

Best Case

 เป็นกรณีที่จะทำงานแค่ 1 รอบหรือจำนวนของ array มีแค่ 1 ตัวทำให้ไม่ต้องเข้าลูป while จากนั้นจะ return ค่าของ array ออกมาได้เลย

Bio O จะเป็น Big O => O(1)

Worst Case

 เป็นกรณีที่ array มีจำนวนข้อมูลมากทำให้ต้องเข้าลูป while หลายครั้งจึงทำให้เวลาในการทำงานนานขึ้น ถ้าทำเสร็จแล้วให้ return ค่าออกมาและค่าที่ได้จะเรียงจากน้อยไปมากแล้ว

Big O จะเป็น Big O => O(n^2)

ใกล้เคียง

การจัดเรียงอิเล็กตรอนของธาตุ (หน้าข้อมูล) การจัดการความเครียด การจัดสรรคลื่นความถี่วิทยุสมัครเล่น การจัดหมู่หนังสือแบบทศนิยมดิวอี้ การจัดการทาลัสซีเมีย การจัดอันดับของจุฬาลงกรณ์มหาวิทยาลัย การจัดเส้นทางแบบหัวหอม การจัดอันดับของมหาวิทยาลัยเกษตรศาสตร์ การจัดอันดับของมหาวิทยาลัยมหิดล การจัดระดับความเหมาะสมของรายการโทรทัศน์ไทย