Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
0
Добавлен:
13.05.2026
Размер:
917 б
Скачать
import random
import time
random.seed(507)
seq10 = [random.random() for _ in range(10)]
seq100 = [random.random() for _ in range(100)]
seq1000 = [random.random() for _ in range(1000)]
n = 50

def comp(x,y):
	return x < y

def my_sort(seq, comparator):
	i = 0
	j = 0
	l = len(seq)

	while i != l:
		while j != (l-i-1):
			if comparator(seq[j], seq[j+1]):
				tmp = seq[j]
				seq[j] = seq[j+1]
				seq[j+1] = tmp
			j += 1
		j = 0	    
		i += 1

	return seq

def sort_time(seq, n):
	total_time = 0
	for i in range(n):
		start_time = time.perf_counter_ns()
		my_sort(seq, comp)
		end_time = time.perf_counter_ns()
		total_time += end_time - start_time
	print(f'Среднее время {n} сортировок массива из {len(seq)} элементов в наносекундах равно {total_time / n}')

sort_time(seq10,n)
sort_time(seq100,n)
sort_time(seq1000,n)
Соседние файлы в папке семестр 1