Ordenação Binaria
Publicado por Enzo de Brito Ferber 08/06/2008
[ Hits: 5.312 ]
Homepage: http://www.maximasonorizacao.com.br
Esse script pega um número pela linha de comando e gera uma string de 1 a 'n' e organiza pela notação "pré-ordenada" (como se fosse uma árvore binária). Bem interessante pra entender pesquisa binária.
Espero que seja útil pra álguem.
[]'s
// bin_order.c #include <stdio.h> #include <stdlib.h> static int *matrix; static int *nmatrix; static int matrix_size; static int matrix_pos; void bin_order (int low, int high) { int mid = (low + high) / 2; nmatrix[matrix_pos] = matrix[mid]; matrix_pos++; if (low >= high) return ; bin_order (low, mid - 1); bin_order (mid + 1, high); } int main (int argc, char **argv) { register int i; matrix_pos = 0; if (argc < 2) { printf("Uso: %s <numero>\n", argv[0]); return 0; } matrix_size = atoi(argv[1]); matrix = (int *) malloc (matrix_size * sizeof (int)); nmatrix = (int *) malloc (matrix_size * sizeof (int)); if ( (!matrix) || (!nmatrix)) { perror("malloc()"); return 0; } for (i = 0; i < matrix_size; i++)matrix[i] = (i + 1); printf("Ordem Binaria: "); bin_order (0, matrix_size - 1); for (i = 0; i < matrix_size; i++) printf("%d ", nmatrix[i]); puts(""); return 0; }
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
SysAdmin ou DevOps: Qual curso inicial pra essa área? (0)
Melhores Práticas de Nomenclatura: Pastas, Arquivos e Código (3)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta