Você está na página 1de 2

Python

função input
int()
———————————————————————————————————————
Matriz——> array de arrays

Struct——>Não é indexado que nem matriz


——>Se aproxima mais do que seria um objeto

N E M tamanho da matriz
zigzag

———————————————————————————————————————

Função comparação
Objeto < Objeto
Acessar o atributo para fazer a comparação

———————————————————————————————————————
Ordenação
-Bubble Sort (Complexidade n*n):
Loop: percorre a lista e faz o swap entre duas posições seguidas deixando o menor na primeira
posição e o maior na segunda até que não seja necessário fazer mais nenhuma troca.

-Insertion Sort (Complexidade n*n ou n[se ordenado]):


Percorre e vê se o elemento cabe antes e realoca os outros, ou seja: percorre 1 + 2 + 4 +…+ n-1
vezes
array—> [5 10 4 3 2] —> [4 5 10 3 2] —> [3 4 5 10 2] —> [2 3 4 5 10]

-Merge Sort (Complexidade n*log n):


Dividir para conquistar
Vai dividindo por dois o array
Função recursiva: ordena varias partes e vai fazendo o merge(duas partes ordenadas com o
ponteiro nas duas primeiras posições vai aumentando o ponteiro com o menor valor ordenado ate
que esse elemento seja maior que o do outro ponteiro)

-Quick Sort:

Stack = pilha de funções (na função recursiva)


MERGE SORT —> CASO BASE E ROTINA DE RECURSÃO

QSORT STDLIB.H
Qsort (values, tamanho, sizeof(int), cmpfunc

Função de comparação
if a>b returns positivo
if a<b return negativo
if a=b return 0

int cmpfunc (const void * a, const void *b)


{
return( *(int*)a - *(int*)b);
}
STL
count = contador
val = valor do array
j<len
Se eu tivesse esse array ordenado o que facilitaria??
Complexidade precisa diminuir —-> ordenação ???

Você também pode gostar