Neste projeto, criamos uma lista telefônica aleatória, armazenamos em um arquivo de texto e, em seguida, ordenamos em ordem alfabética usando o algoritmo Bubble Sort.
- Gerar uma lista telefonica randomicamente.
- Armazena a lista gerada em arquivo .txt.
- Ordenar a lista em ordem alfabética usando Bubble Sort.
- Reeorganiza o arquivo .txt
- Clone este repositório:
git clone https://github.com/pauletxz/Booble_Sort
- Execute o seguinte comando:
python main.py
def bubbleSort(arr):
n = len(arr)
for i in range(n):
for j in range(0, n-i-1):
if arr[j].lower() > arr[j+1].lower():
arr[j], arr[j+1] = arr[j+1], arr[j]
return arr
def bubbleSort(arr): | -> C1
n = len(arr) | ->C2
for i in range(n): |-> n+1
for j in range(0, n-i-1): | -> (n+1) * (n/2)
if arr[j].lower() > arr[j+1].lower(): | -> (n+1) * (n/2) * 1
arr[j], arr[j+1] = arr[j+1], arr[j] | -> (n+1) * (n/2) * 1
return arr #1
T(n) = C1 + C2+ (n+1) + (n+1) * (n/2) + (n+1) * (n/2) + (n+1) * (n/2) * C1
T(n) = 3n^2/2 + 5n/2 + 3
Quando a complexidade de tempo é (O(n^2)), tanto o melhor caso quanto o pior caso têm a mesma ordem de crescimento, ou seja, ambos são (n^2). Portanto, não há distinção significativa entre os dois cenários em termos de complexidade.