GithubHelp home page GithubHelp logo

aasouzaconsult / algoritmos Goto Github PK

View Code? Open in Web Editor NEW
5.0 2.0 1.0 66.46 MB

Repositório de Algoritmos

Python 5.95% HTML 0.03% PHP 3.73% Jupyter Notebook 90.12% R 0.17%
python r java learning machine php learning-python nlp-machine-learning

algoritmos's Introduction

O que é um algoritmo?

Em ciência da computação, um algoritmo é uma sequência finita de ações executáveis que visam obter uma solução para um determinado tipo de problema. Segundo Dasgupta, Papadimitriou e Vazirani, “algoritmos são procedimentos precisos, não ambíguos, mecânicos, eficientes e corretos”.

Repositório de Algoritmos

Códigos auxiliares diversos nas seguintes linguagens:

Alguns dos algoritmos que encontrará aqui...

  • Algoritmos de ordenação
    • há diversas implementações de algoritmos de ordenação, como Bubble Sort, Insertion Sort, Selection Sort, Quick Sort, Merge Sort, Heap Sort, entre outros.
  • Algoritmos de busca
    • também há implementações de algoritmos de busca, como Busca Sequencial, Busca Binária e Busca Ternária.
  • Algoritmos de grafos
    • há implementações de algoritmos relacionados a grafos, como Algoritmo de Dijkstra, Algoritmo de Kruskal, Algoritmo de Prim, Algoritmo de Bellman-Ford, entre outros.
  • Algoritmos de árvores
    • há implementações de algoritmos relacionados a árvores, como Árvore AVL, Árvore Rubro-Negra, Árvore B, entre outros.
  • Algoritmos de programação dinâmica
    • há implementações de algoritmos de programação dinâmica, como Fibonacci, Knapsack, Longest Common Subsequence, números primos, dentre outros.
  • Algoritmos diversos
    • há implementações de diversos outros algoritmos, como algoritmos de criptografia, algoritmos de compressão de dados, algoritmos de processamento de imagens, entre outros.
  • Muito mais...
    • Algoritmo de Euclides Estendido: um algoritmo que encontra o máximo divisor comum (MDC) entre dois números inteiros e também encontra os coeficientes de Bézout, que são úteis em diversas aplicações, como criptografia.
    • Algoritmo de Floyd-Warshall: um algoritmo que encontra o caminho mais curto entre todos os pares de vértices em um grafo ponderado.
    • Algoritmo de Kruskal: um algoritmo de árvore geradora mínima que encontra uma subárvore que conecta todos os vértices de um grafo não direcionado ponderado.
    • Algoritmo de Bellman-Ford: um algoritmo que encontra o caminho mais curto entre um vértice de origem e todos os outros vértices em um grafo ponderado com arestas negativas.
    • Algoritmo de Boyer-Moore: um algoritmo de busca de padrões que é eficiente em casos onde o padrão a ser buscado é maior do que o texto onde a busca é realizada
    • Algoritmo de Edmonds-Karp: um algoritmo de fluxo máximo que utiliza a técnica de Busca em Largura (BFS) para encontrar o caminho mais curto entre a fonte e o sorvedouro em um grafo ponderado.
    • Algoritmo de Prim: um algoritmo de árvore geradora mínima que encontra uma subárvore que conecta todos os vértices de um grafo não direcionado ponderado.
    • Algoritmo de Kosaraju: um algoritmo que encontra as componentes fortemente conectadas em um grafo direcionado.
    • Algoritmo de Ford-Fulkerson: um algoritmo de fluxo máximo que utiliza a técnica de Caminho Aumentante para encontrar o fluxo máximo em um grafo ponderado.
    • Algoritmo de Monte Carlo: um algoritmo que utiliza amostragem aleatória para resolver problemas, como integração numérica e teste de primalidade.
    • Algoritmo de Aho-Corasick: um algoritmo que encontra todas as ocorrências de um conjunto de padrões em um texto, em tempo linear em relação ao tamanho do texto.
    • Algoritmo de Strassen: um algoritmo que realiza a multiplicação de matrizes em tempo subquadrático, tornando-o mais eficiente do que o algoritmo padrão de multiplicação de matrizes.
    • Algoritmo de Huffman: um algoritmo que codifica dados de forma eficiente, utilizando a menor quantidade de bits possível para representar cada caractere.
    • Algoritmo de Rabin-Karp: um algoritmo de busca de padrões que utiliza hash de strings para encontrar todas as ocorrências de um padrão em um texto.
    • Algoritmo de Backtracking: um algoritmo que utiliza a técnica de tentativa e erro para encontrar uma solução para um problema, explorando todas as possibilidades até encontrar uma solução válida.
    • E muito mais... confiram!

Livros e Artigos

Curso


Alex Souza

github-contribution-grid-snake

Language

algoritmos's People

Contributors

aasouzaconsult avatar

Stargazers

Amanda Alexandre avatar Juliana avatar Matheus Santeago avatar  avatar Murillo Nardi avatar

Watchers

James Cloos avatar  avatar

Forkers

euemersonmendes

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.