Redes uma abordagem top down
Por: Val Anacleto • 4/11/2016 • Artigo • 1.122 Palavras (5 Páginas) • 332 Visualizações
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define MAXTAM 800000
/* Metodo de Ordenação Bubble Sort*/
void bubbleSort(int *v, int tam)
{
int i, j, aux;
for(i=tam-1; i >= 1; i--)
{
for(j=0; j < i; j++)
{
if(v[j] > v[j+1])
{
aux = v[j];
v[j] = v[j+1];
v[j+1] = aux;
}
}
}
}
/* Método de Ordenação Insertion Sort*/
void insertionSort(int *V, int n)
{
int i, j;
int aux;
for (i = 1; i < n; i++) {
aux = V[i];
j = i - 1;
while ((j >= 0) && (aux < V[j])) {
V[j+1] = V[j];
j--;
}
if (j != (i-1))
V[j+1] = aux;
}
}
/* Método de Ordenação Binary Insertion Sort */
void insertionSortBin(int *V, int n)
{
int i, j, meio, esq, dir;
int aux;
for (i = 1; i < n; i++)
{
aux = V[i];
esq = 0;
dir = i;
while (esq < dir)
{
meio = (esq + dir) / 2;
if (V[meio] <= aux)
esq = meio + 1;
else
dir = meio;
}
for (j=i; j>esq; j--) {
V[j] = V[j-1];
}
V[dir] = aux;
}
}
/* Método Shell Sort */
void shellSort(int *A, int n)
{
int i, j, h;
int aux;
h = 1;
while (h < n) {
h = 3 * h + 1;
}
while (h > 1)
{
h /= 3;
for (i = h; i < n; i++) {
aux = A[i];
j = i - h;
while (j >= 0 && aux < A[j]) {
A[j + h] = A[j];
j -= h;
}
A[j + h] = aux;
}
}
}
/*Teste dos métodos de ordenação*/
int main()
{
/* Definição da variável de controle para atribuição dos valores aos vetores e criação dos vetores com tamanho máximo pré-definido */
int i;
int *vet1, *vet2, *vet3, *vet4;
vet1 = (int*) malloc(sizeof(int)*MAXTAM);
vet2 = (int*) malloc(sizeof(int)*MAXTAM);
vet3 = (int*) malloc(sizeof(int)*MAXTAM);
vet4
...