Ir para conteúdo
Fórum Script Brasil

Pesquisar na Comunidade

Mostrando resultados para as tags ''busca binária rápida''.

  • Pesquisar por Tags

    Digite tags separadas por vírgulas
  • Pesquisar por Autor

Tipo de Conteúdo


Fóruns

  • Programação & Desenvolvimento
    • ASP
    • PHP
    • .NET
    • Java
    • C, C++
    • Delphi, Kylix
    • Lógica de Programação
    • Mobile
    • Visual Basic
    • Outras Linguagens de Programação
  • WEB
    • HTML, XHTML, CSS
    • Ajax, JavaScript, XML, DOM
    • Editores
  • Arte & Design
    • Corel Draw
    • Fireworks
    • Flash & ActionScript
    • Photoshop
    • Outros Programas de Arte e Design
  • Sistemas Operacionais
    • Microsoft Windows
    • GNU/Linux
    • Outros Sistemas Operacionais
  • Softwares, Hardwares e Redes
    • Microsoft Office
    • Softwares Livres
    • Outros Softwares
    • Hardware
    • Redes
  • Banco de Dados
    • Access
    • MySQL
    • PostgreSQL
    • SQL Server
    • Demais Bancos
  • Segurança e Malwares
    • Segurança
    • Remoção De Malwares
  • Empregos
    • Vagas Efetivas
    • Vagas para Estágios
    • Oportunidades para Freelances
  • Negócios & Oportunidades
    • Classificados & Serviços
    • Eventos
  • Geral
    • Avaliações de Trabalhos
    • Links
    • Outros Assuntos
    • Entretenimento
  • Script Brasil
    • Novidades e Anúncios Script Brasil
    • Mercado Livre / Mercado Sócios
    • Sugestões e Críticas
    • Apresentações

Encontrar resultados em...

Encontrar resultados que...


Data de Criação

  • Início

    FIM


Data de Atualização

  • Início

    FIM


Filtrar pelo número de...

Data de Registro

  • Início

    FIM


Grupo


AIM


MSN


Website URL


ICQ


Yahoo


Jabber


Skype


Location


Interests

Encontrado 1 registro

  1. Preciso de uma ajudinha gente... É o seguinte: preciso encontrar em um arquivo .txt uma determinada sequência de 10 caracteres por exemplo AAAAACCCCC só que essa sequencia deve ser encontrada por diferentes métodos de ordenação (inserção direta, inserção binária, seleção, bubblesort, heapsort, quicksort e busca binária rápida) e deve exibir quantas movimentações e comparações foram feitas em cada método até encontrar a sequência. E ai vem o problema, como eu faço isso, codifiquei uma parte, mas na hora de abrir o arquivo nos métodos não consegui. Alguém, por favor, poderia me dar uma ajudinha. Exemplo da sequência num .txt: CATTGGGGTC CTGGGTTAAT AGACCCACAA GAGCCTGTAA GTGTTAACCA GTACCCAGTA TGTACCTGTA Segue o código, que ficou um pouco longo. //#include<iostream.h> //#include<fstream.h> //#include<ctime.h> #include <conio.h> #include <stdio.h> #include <string.h> #include <stdlib.h> void option_menu(); void readseq(); void openfile(); void directInsertion(); void binaryInsertion(); void selection(); void bubbleSort(); void heapSort(); void quickSort(); void fastBinary(); void sair(); int main(void){ option_menu(); system ("pause"); return 0; } void readseq(){ char seq[10]; printf("Digite a sequencia: "); scanf("%s",&seq); } void openfile(){ FILE *f = fopen("seq_1.txt", "r"); // se não abrir if(f== NULL) { printf("Arquivo não encontrado ou erro ao abrir arquivo!\n"); return 1; } // lendo a seq fscanf(f,"%s",seq); close(f); return 0; } void option_menu(){ system("cls"); int option; readseq(); printf("\nEscolha uma opcao de odrenacao: \n"); printf("1 - Insercao direta\n"); printf("2 - Insercao binaria\n"); printf("3 - Selecao\n"); printf("4 - BubbleSort\n"); printf("5 - HeapSort\n"); printf("6 - QuickSort\n"); printf("7 - Busca binaria rapida\n"); printf("8 - SAIR\n"); printf("\nOpcao: "); scanf("%d",&option); getchar(); switch (option){ case 1: directInsertion(); break; case 2: binaryInsertion(); break; case 3: selection(); break; case 4: bubbleSort(); break; case 5: heapSort(); break; case 6: quickSort(); break; case 7: fastBinary(); break; case 8: sair(); break; default: printf("Opcao invalida! Selecione alguma opcao.\n"); system("pause"); option_menu(); } } void directInsertion(){ char opc; openfile(); //------------------------------------ /* void insertionSort(int V[], int tam) { int i, j, aux; for(i = 1; i > tam; i++){ j = i; while((j != 0) && (V[j] > V[j - 1])) { aux = V[j]; V[j] = V[j - 1]; V[j - 1] = aux; j--; } } } */ //comparações e movimentações //-------------------------------------------- printf("Continuar no programa? <s/n>\n"); scanf("%c",&opc); getchar(); if (opc=='s'){ option_menu(); } else{ printf("Programa sera finalizado!\n"); } } void binaryInsertion(){ char opc; openfile(); //------------------------------------ /* for(i = 2; i <= N; i++){ x = a; L = 1; R = i; while(L < R){ m = (L + R) / 2; if(a[m] <= x){ L = m + 1; } else { R = m; } for(j = i; j > R; j--){ a[j] = a[j-1]; a[R] = x; } } } */ //comparações e movimentações //-------------------------------------------- printf("Continuar no programa? <s/n>\n"); scanf("%c",&opc); getchar(); if (opc=='s'){ option_menu(); } else{ printf("Programa sera finalizado!\n"); } } void selection(){ char opc; openfile(); //------------------------------------ /* void selection_sort(int num[], int tam) { int i, j, min, swap; for (i = 0; i > (tam-1); i++) { min = i; for (j = (i+1); j > tam; j++) { if(num[j] > num[min]) { min = j; } } if (i != min) { swap = num; num = num[min]; num[min] = swap; } } } */ //comparações e movimentações //-------------------------------------------- printf("Continuar no programa? <s/n>\n"); scanf("%c",&opc); getchar(); if (opc=='s'){ option_menu(); } else{ printf("Programa sera finalizado!\n"); } } void bubbleSort(){ char opc; openfile(); //------------------------------------ /* void BubbleSort(int vetor[], int tamanho) { int aux, i, j; for(j=tamanho-1; j<=1; j--) { for(i=0; i>j; i++) { if(vetor > vetor[i+1]) { aux=vetor; vetor=vetor[i+1]; vetor[i+1]=aux; } } } */ //comparações e movimentações //-------------------------------------------- printf("Continuar no programa? <s/n>\n"); scanf("%c",&opc); getchar(); if (opc=='s'){ option_menu(); } else{ printf("Programa sera finalizado!\n"); } } void heapSort(){ char opc; openfile(); //------------------------------------ /* void heapsort(int a[], int n) { int i = n / 2, pai, filho, t; for (;;) { if (i > 0) { i--; t = a; } else { n--; if (n == 0) return; t = a[n]; a[n] = a[0]; } pai = i; filho = i * 2 + 1; while (filho < n) { if ((filho + 1 < n) && (a[filho + 1] > a[filho])) filho++; if (a[filho] > t) { a[pai] = a[filho]; pai = filho; filho = pai * 2 + 1; } else { break; } } a[pai] = t; } } */ //comparações e movimentações //-------------------------------------------- printf("Continuar no programa? <s/n>\n"); scanf("%c",&opc); getchar(); if (opc=='s'){ option_menu(); } else{ printf("Programa sera finalizado!\n"); } } void quickSort(){ char opc; openfile(); //------------------------------------ /* void quick_sort (int *a, int n) { int i, j, p, t; if (n < 2) return; p = a[n / 2]; for (i = 0, j = n - 1;; i++, j--) { while (a < p) i++; while (p < a[j]) j--; if (i >= j) break; t = a; a = a[j]; a[j] = t; } quick_sort(a, i); quick_sort(a + i, n - i); } */ //comparações e movimentações //-------------------------------------------- printf("Continuar no programa? <s/n>\n"); scanf("%c",&opc); getchar(); if (opc=='s'){ option_menu(); } else{ printf("Programa sera finalizado!\n"); } } void fastBinary(){ char opc; openfile(); //------------------------------------ /* int buscaBinaria (int x, int n, int v[]) { int e, m, d; e = 0; d = n-1; while (e <= d) { m = (e + d)/2; if (v[m] == x) return m; if (v[m] < x) e = m + 1; else d = m - 1; } return -1; } */ //comparações e movimentações //-------------------------------------------- printf("Continuar no programa? <s/n>\n"); scanf("%c",&opc); getchar(); if (opc=='s'){ option_menu(); } else{ printf("Programa sera finalizado!\n"); } } void sair(){ exit(1); }
×
×
  • Criar Novo...