diff --git a/Algoritmos/com.busca.linear/README.md b/Algoritmos/com.busca.linear/README.md new file mode 100644 index 0000000..b50746e --- /dev/null +++ b/Algoritmos/com.busca.linear/README.md @@ -0,0 +1,17 @@ +# Busca linear + +### Introdução + +A busca linear consite em um método de busca através do qual percorremos um array de elementos comparando cada elemento com o valor que desejamos encontrar. +Esse tipo de busca é muito utilizado quando não sabemos a posição do elemento que desejamos encontrar. +Contudo, para a complexidade desse algoritmo é O(n), ou seja, o tempo de execução é proporcional ao tamanho do array. Em caso de arrays muito grandes, esse tipo de busca pode ser muito custoso. + +## Funcionamento do algoritmo +O algoritmo realiza as seguintes etapas: +1. Cria um array com 5 posições. +2. Preenche o array com valores inteiros. +3. Solicita ao usuário que digite um valor que deseja encontrar. +4. Percorre o array através deu um for comparando cada elemento com o valor que desejamos encontrar. +5. Se o valor for encontrado, ele atribue o valor 'true' à variável isNumero, e atribui o valor encontrado à variável numeroLocalizado. +6. Caso o valor não seja encontrado, ele atribui o valor 'false' à variável isNumero. +7. Exibe o resultado da busca. diff --git a/Algoritmos/com.busca.linear/src/Main.java b/Algoritmos/com.busca.linear/src/Main.java new file mode 100644 index 0000000..e6cc51e --- /dev/null +++ b/Algoritmos/com.busca.linear/src/Main.java @@ -0,0 +1,33 @@ +import java.util.Scanner; + +public class Main { + public static void main(String[] args) { + + var sc = new Scanner(System.in); + + int[] vetor = new int[5]; + vetor[0] = 5; + vetor[1] = 1; + vetor[2] = 2; + vetor[3] = 3; + vetor[4] = 4; + + boolean isNumero = false; + int numeroLocalizado = 0; + + System.out.println("insira o numero a ser buscado: "); + int numeroBuscado = sc.nextInt(); // criada uma variável pra armazenar o numero que será buscado pelo algoritmo + + for (int i : vetor) { + if (numeroBuscado == i) { + isNumero = true; + numeroLocalizado = i; + } + } + if (isNumero) { + System.out.println("valor encontrado: " + numeroLocalizado); + } else { + System.out.println("valor nao encontrado: " + numeroBuscado); + } + } +} \ No newline at end of file