Wie sieht der Quick Sort in Python aus, wenn der Median als Pivot gewählt wird?

Antwort

Hier ist ein Beispiel für den Quick Sort-Algorithmus in Python, bei dem der Median als Pivot gewählt wird: ```python def quicksort(arr): if len(arr) <= 1: return arr else: pivot = median(arr) less = [x for x in arr if x < pivot] equal = [x for x in arr if x == pivot] greater = [x for x in arr if x > pivot] return quicksort(less) + equal + quicksort(greater) def median(arr): sorted_arr = sorted(arr) n = len(sorted_arr) mid = n // 2 if n % 2 == 0: return (sorted_arr[mid - 1] + sorted_arr[mid]) / 2 else: return sorted_arr[mid] # Beispielaufruf arr = [3, 6, 8, 10, 1, 2, 1] sorted_arr = quicksort(arr) print(sorted_arr) ``` In diesem Code wird der Median der Liste als Pivot verwendet. Der Quick Sort-Algorithmus teilt die Liste in drei Teile: Elemente, die kleiner als der Pivot sind, Elemente, die gleich dem Pivot sind, und Elemente, die größer sind. Dann wird der Quick Sort rekursiv auf die Teile angewendet.

Kategorie: Programmierung Tags: Quick Sort Median
Frage stellen und sofort Antwort erhalten