kaykeeb3 / binarysearch

Este repositório é uma jornada pelos Algoritmos em Go, onde cada exemplo é uma porta para compreender a mágica por trás das complexidades matemáticas, e uma oportunidade para aprimorar seu conhecimento em algoritmos e estruturas de dados. 🚀👩‍💻📦

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Algoritmos em Go - Exemplos com Complexidades Matemáticas 🚀

Este repositório apresenta uma coleção de exemplos de algoritmos implementados em Go, cada um projetado para ilustrar uma complexidade matemática diferente. Estes exemplos podem ajudar a compreender como os algoritmos funcionam e como suas eficiências variam.

1. Soma Simples (Complexidade O(n)) 🧮

  • Arquivo: simple_sum.go
  • Descrição: Este exemplo demonstra como calcular a soma dos elementos de um array utilizando uma abordagem de iteração simples. A complexidade é linear, O(n), onde "n" representa o número de elementos no array.

2. Busca Linear (Complexidade O(n)) 🔍

  • Arquivo: linear_search.go
  • Descrição: Neste exemplo, você encontrará uma implementação de busca linear em um array não ordenado. A complexidade também é linear, O(n).

3. Ordenação QuickSort (Complexidade O(n log n)) 📦

  • Arquivo: quicksort.go
  • Descrição: Apresentamos o algoritmo de ordenação QuickSort, que possui uma complexidade média de O(n log n) e é amplamente utilizado para ordenar arrays.

4. Exponenciação Rápida (Complexidade O(log n)) ⏫

  • Arquivo: fast_power.go
  • Descrição: Este exemplo demonstra a exponenciação rápida, um algoritmo eficiente para calcular potências em tempo logarítmico. Sua complexidade é O(log n).

Cada exemplo inclui código Go funcional e comentários explicativos para auxiliar na compreensão do funcionamento dos algoritmos e suas complexidades matemáticas.

Sinta-se à vontade para explorar, executar e experimentar esses exemplos. Eles são uma ótima maneira de aprimorar seu conhecimento em algoritmos e estruturas de dados. 👩‍💻👨‍💻

GitHub license

About

Este repositório é uma jornada pelos Algoritmos em Go, onde cada exemplo é uma porta para compreender a mágica por trás das complexidades matemáticas, e uma oportunidade para aprimorar seu conhecimento em algoritmos e estruturas de dados. 🚀👩‍💻📦

License:MIT License


Languages

Language:Go 100.0%