Вы находитесь на странице: 1из 3

Bubble Sort (Ordenao por troca) Um dos algoritmos extremamente fcil de implementar, mais esse algoritmo sempre a mdia

ir apresentar a complexidade O(n2), sempre apresentar os mesmo n mero de compara!es independentemente "ue se#a o pior, mdio e mel$or caso, pois sua ordenao funciona atra%s de dois laos de repetio, onde o numero de passos apenas depender do taman$o do %etor ou arra& "ue foi passado' (m seu mel$or caso no ocorrer nen$uma troca, ou se#a, "uando esti%er totalmente ordenado' (sse algoritmo funciona da seguinte forma) So reali*adas %rias passagens pelo %etor, sendo "ue cada passagem comparado dois elementos ad#acentes e caso este desordenado submetido + troca, repetido os dois passos acima com os primeiros n,- itens, depois com os primeiros n,2 itens, at "ue reste apenas um item' .lgoritmo para i / ate taman$o(%etor),- entao para # i0- ate taman$o(%etor),if .1i2 3 .1#2 entao troca .1i2 .1#2 442 45 n mero de compara!es aproximadamente ) n262 47 n mero de trocas aproximadamente ) n262

(nto 8(n) 9 c-(n0-) 0c2


n

(n i +1) + c (n i) + c (n i)
i =1
5

i =1

i =1

9 (n) 0 (c2 0 c2

(n i ) 0c)
7

i =1

:uando

(n i) 9
i =1

n i = n2
i =1 i =1

n(n + 1) n 2 n = 2 n 2

4omo pode ser %isto no grfico "uando o %etor encontra,se totalmente ordenado no ocorre nen$uma troca de elementos e destaca,se como sendo o seu mel$or caso, porm ordenado in%ersamente seu pior caso e aleat;rio seu caso mdio ambos ocorre as trocas, mas no caso de aleatoriamente ocorrer em certas posi!es do %etor os n meros ad#acentes este#am ordenados o n mero de trocas ser menor, fa*endo "ue o tempo do mesmo caia em relao ao pior caso'

SelectionSort 4lassificado como algoritmos de forma fcil a sua implementao pois similar ao bubblesort, sua complexidade O(n2), ou se#a, ineficiente com grande %olume na entrada de dados, porm o "ue pode ser obser%ado "ue em seu processamento foi mais rpido em torno de </= ao BubbleSort' Seu funcionamento ocorre atra%s de dois laos de repetio, onde o n mero de passos apenas depender do taman$o do %etor ou arra& "ue foi passado, ento se procura sempre o menor elemento do %etor arma*enando esse %alor e posteriormente comparado se a pr;xima posio menor "ue o m>nimo, sendo positi%o ele seta um no%o %alor para essa %ari%el e assim continuamente ate terminar o segundo loop' ?eito isso comparado se o menor %alor encontrado .lgoritmo para i / ate taman$o(%etor),- entao menor i para # i0- ate taman$o(%etor),if .1#2 @ .1menor2 entao menor # if i @3 menor entao troca .1i2 .1min2 (nto
i 1 i 1

4- n 42 n,-

47 4<
45 4A n,4B n,-

i 1 j= 1 i 1

(i j +1) (i j ) (i j )

j= 1 j= 1

i 1

T (n) = c1n + c 2(n 1) + c3j =1 (i j + 1) + c 4j =1 (i j ) + c5j =1 (i j ) + c6(n 1) + c 7(n 1) = ( n 2 )


i 1

para i - ate n Ce& 9 %etor1i2D # i ,-D enquanto # 39 / e %etor1#2 3 Ce& %etor 1#0-2 9 %etor1#2D # # ,-D %etor1#0-2 9 Ce&D
n n

4- n 42 n,45 n,47 4< 4A

i 1
i 1
i= 1 i= 1 n

i= 1 n

4B n,n

(nto T (n) = c1n + c 2(n 1) + c3(n 1) + c 4

i + c5 i 1 + c6 i 1 + c7(n 1) = (n 2 )
i =1 i =1 i =1

Вам также может понравиться