trabalho de programação

4
TRABALHO DE PROGRAMAÇÃO Nome: Introdução Métodos de ordenação de dados são métodos utilizados na programação com o objetivo de ordenar dados dentro de vetores e matrizes. Neste presente trabalho irei mostrar três tipos de métodos de ordenação e seus respectivos algoritmos. 1 – Shell Sort Criado por Donald Shell em 1959,publicado pela Universidade de Cincinnati, Shell sort é o mais eficiente algoritmo de classificação dentre os de complexidade quadrática. É um refinamento do método de inserção direta.O algoritmo difere do método de inserção direta pelo fato de no lugar de considerar o array a ser ordenado como um único segmento, ele considera vários segmentos sendo aplicado o método de inserção direta em cada um deles.Basicamente o algoritmo passa várias vezes pela lista dividindo o grupo maior em menores. Nos grupos menores é aplicado o método da ordenação por inserção. 1.1 – Algoritmo procedure SelectionSort (vetor , n); var i,j: integer; min, temp : integer; begin for i:= 0 to n-1 do begin min := i; for j:=i+1 to n-1 do

Upload: rafa

Post on 30-Sep-2015

213 views

Category:

Documents


1 download

DESCRIPTION

exemplos de exercicios em c sharp

TRANSCRIPT

TRABALHO DE PROGRAMAO

Nome:

IntroduoMtodos de ordenao de dados so mtodos utilizados na programao com o objetivo de ordenar dados dentro de vetores e matrizes. Neste presente trabalho irei mostrar trs tipos de mtodos de ordenao e seus respectivos algoritmos.1 Shell SortCriado por Donald Shell em 1959,publicado pela Universidade de Cincinnati, Shell sort o mais eficiente algoritmo de classificao dentre os de complexidade quadrtica. um refinamento do mtodo de insero direta.O algoritmo difere do mtodo de insero direta pelo fato de no lugar de considerar o array a ser ordenado como um nico segmento, ele considera vrios segmentos sendo aplicado o mtodo de insero direta em cada um deles.Basicamente o algoritmo passa vrias vezes pela lista dividindo o grupo maior em menores. Nos grupos menores aplicado o mtodo da ordenao por insero.1.1 Algoritmoprocedure SelectionSort (vetor , n);var i,j: integer; min, temp : integer;beginfor i:= 0 to n-1 do begin min := i; for j:=i+1 to n-1 do if vetor[j] < vetor[min] then min := j; temp := vetor[i]; vetor[i] := vetor[min]; vetor[min] := temp; end;

2 - Quick SortEste algoritmo nasceu de uma pequena modificao do pior algoritmo at ento conhecido ( o bolha), e passou a ser o melhor algoritmo que conhecemos. A modificao simples: em vez de trocar vizinhos, vamos trocar os elementos o mais longe possvel um do outro. Isto foi feito por C.R. Hoare, no incio dos anos 60. Como este algoritmo tem paternidade conhecida, respeita-se o nome dado por seu inventor: quicksort ( classificao rpida). O grande detalhe o uso da recursividade, o que pode limitar sua utilizao em linguagens pobres ( COBOL, CLIPPER, BASIC, NATURAL etc) que no tenham este recurso. Outra alternativa seria program-lo de maneira no recursiva, o que o torna um pouco mais complexo.2.1 Algoritmo

3 - SelectionSort:O Slection Sort um dos algoritmos de ordenao mais simples, porm um dos algoritmos de ordenao mais lentos, quando utilizado em arquivos muito grandes. Ele baseado em passar sempre o menor valor do vetor da primeira posio, depois o de segundo menor valor para a segunda posio, e assim feito sucessivamente com os (n-1) elementos restantes, at os ltimos dos elementos. A ordem do algoritmo de O(n2).3.1 - AlgoritmoselectionSort(intvetor[],inttam) var i,j,min,aux; Inicio i 0 para (i=0;i