관리 메뉴

Storage Gonie

빈출 순서대로 나열하기 본문

알고리즘/기본 알고리즘

빈출 순서대로 나열하기

Storage Gonie 2018. 10. 21. 01:35
반응형
def bubble_sort_reversed(l):
for size in reversed(range(len(l))):
for i in range(size):
if l[i][1] < l[i+1][1]:
l[i], l[i+1] = l[i+1], l[i]
input = "asdaasdnjq2"                                                         # 첫번째 입력
#input = [1, 1, 3, 5, 3, 2, 1] # 두번째 입력
#input = ['apple', 'banana', 'banana', 'apple', 'apple', 'melon', 'orange'] # 세번째 입력

uniqueElements = list(set(input)) # set은 중복을 허용하지 않으므로 중복이 제거한 결과가 들어감

result = []

for ue in uniqueElements:
result.append([ue, input.count(ue)]) # list.count() 해주면 문자든 문자열이든 숫자든 개수를 세어줌

bubble_sort_reversed(result) # 최다 빈출 순서대로 정렬

print(result)

'''
첫번째 입력에 대한 결과 : [['a', 3], ['d', 2], ['s', 2], ['j', 1], ['n', 1], ['q', 1], ['2', 1]]

두번째 입력에 대한 결과 : [[1, 3], [3, 2], [2, 1], [5, 1]]

세번째 입력에 대한 결과 : [['apple', 3], ['banana', 2], ['melon', 1], ['orange', 1]]
'''


반응형
Comments