Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
#include <iostream> #include <cstdlib> #include <stdlib.h> #include <time.h> /* run this program using the console pauser or add your own getch, system("pause") or input loop */ using namespace std; int buscaLinearSimples(int lista[], int tamanho, int numeroProcurado){ int posicaoEncontrada = -1; for(int i=0; i < tamanho; i++){ if(lista[i] == numeroProcurado){ posicaoEncontrada = i; } } return posicaoEncontrada; } int buscaLinearMelhorada(int lista[], int tamanho, int numeroProcurado){ for(int i=0; i <tamanho; i++){ if(lista[i] == numeroProcurado){ return i; } } return -1; } int buscaLinearSentinela(int lista[], int tamanho, int numeroProcurado){ int ultimoNumero = lista[tamanho-1]; lista[tamanho-1] = numeroProcurado; int i=0; while(lista[i] != numeroProcurado){ i++; } lista[tamanho-1]= ultimoNumero; if(i <tamanho -1 || lista[tamanho-1] == numeroProcurado){ return i; } else{ return -1; } } int* montarLista(int tamanho){ int lista[tamanho]; for(int i=0; i< tamanho; i++){ lista[i] = rand() % tamanho; } return lista; } int main(int argc, char** argv) { int tamanho = 1000; int numeroProcurado = 6; int lista[20]; int posicaoEncontrada = buscaLinearSimples(lista, tamanho, numeroProcurado); //int posicaoEncontrada = buscaLinearMelhorada(lista, tamanho, numeroProcurado); if(posicaoEncontrada >=0){ cout<<"Numero Encontrado na posicao: "; cout<< posicaoEncontrada <<endl; } else{ cout<<"Numero não Encontrado: "<< endl; } return 0; }
Compartilhar