View difference between Paste ID: NfD6TfGj and 3gzpWG5A
SHOW: | | - or go back to the newest paste.
1
"""Написать функцию, на вход которой подается массив с числовыми элементами. Функция должна вернуть отсортированный массив 
2
по частоте повтора элементов в нем, 
3
к примеру someFunction([5, 9, 2, 4, 1, 2, 5, 8, 2, 2, 8, 4, 5]) вернет вот такой результат - [2, 2, 2, 2, 5, 5, 5, 4, 4, 8, 8, 9, 1]."""
4-
def deleteAllElements(arr, element):
4+
def deleteAllElements(arr, element):#Функция удаления всех элемнтов переданных по аргументу
5
	while(arr.count(element) > 0):
6
		arr.remove(element)
7
	return arr
8
def sortCountRepeat(arr):
9
	sort_arr = []
10
	while(len(arr)>0):
11
		max_count = arr.count(arr[0])
12
		elem = arr[0]
13-
		for i in range(len(arr)):
13+
		for i in range(len(arr)):#Ищем элемент у которого максимальное количество повторений
14
			if(arr.count(elem)<arr.count(arr[i])):
15
				elem = arr[i]
16
				max_count = arr.count(arr[i])
17-
		arr = deleteAllElements(arr,elem)
17+
		arr = deleteAllElements(arr,elem)#Удаляем его из массива
18-
		print(arr)
18+
		timedArr = [elem for i in range(max_count)]#Создаем новый массив с тем же количеством повторений данного элемента, которое было в массиве
19-
		timedArr = [elem for i in range(max_count)]
19+
		sort_arr.extend(timedArr)#Добовляем его в конец нашего "отсортированного" массива
20-
		sort_arr.extend(timedArr)
20+
21
	return sort_arr
22
print(sortCountRepeat([5, 9, 2, 4, 1, 2, 5, 8, 2, 2, 8, 4, 5]))