# sorting by direct selection # Nach Eingabe einer natuerlichen Zahl n wird ein # aus n Komponenten bestehendes array sortiert. from random import randint import time n = int(input('Laenge des arrays: ')) print() # Erzeugen des arrays mit dem Namen a # und den n Komponenten a[0], . . . , a[n-1] a = list(range(1,n+1)) # Zuweisung von Zufallszahlen an die Komponenten des arrays a for i in range(0,n): a[i] = randint(1,1000000) # Ausgabe des arrays r = int(input('Wieviele Elemente sollen angezeigt werden? ')) print() for i in range(0,r): print(a[i]) # Die auf die Komponenten a[j], . . , a[n-1] des arrays a # angewendete Funktion min(x,j) bestimmt das kleinste Element # und weist dieses der Komponente a[j] zu. def min(x,j): for i in range(j+1,len(x)): if x[i] < x[j]: temp = x[j] x[j] = x[i] x[i] = temp # Aufrufe der auf das array a anzuwendenden Funktion min # mit Ermittlung des Zeitbedarfs zur Laufzeit start = time.time() j = 0 while j <= n-2: min(a,j) j +=1 end = time.time() # Ausgabe der sortierten Liste print() print('Sortierte Liste:') print() for i in range(0,r): print(a[i]) print() print('Zeitaufwand zum Sortieren von',n,'Elementen: {:7.3f} s'.format(end-start))