Coder Social home page Coder Social logo

franciscosantos1914 / algorithms Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 30 KB

Famous algorithms done with Javascript

JavaScript 100.00%
algorithms data-structures js a-star bellman-ford-algorithm binary-search-tree boyer-moore-algorithm brute-force-algorithm bubble-sort bucket-sort counting-sort crc32 dijkstra-algorithm ford-fulkerson-algorithm hamiltonian huffman-compression-algorithm lru-cache quicksort sliding-window

algorithms's Introduction

Algoritmos 🚀🚀


Este repositório contém implementações de uma variedade de algoritmos clássicos e comuns. Cada algoritmo é acompanhado de uma breve descrição e exemplos de uso, quando aplicável.

Algoritmos de Grafos 🔥


  • Prim's Algorithm: Um algoritmo de árvore de expansão mínima que encontra o subconjunto de arestas que forma uma árvore que inclui todos os vértices, onde o peso total da árvore é minimizado.

  • Kruskal's Algorithm: Um algoritmo de árvore de expansão mínima que encontra um subconjunto mínimo de arestas que conecta todos os vértices de um grafo ponderado.

  • Dijkstra's Algorithm: Um algoritmo para encontrar os caminhos mais curtos entre os nós em um grafo ponderado, que pode representar, por exemplo, distâncias rodoviárias entre cidades.

  • Bellman-Ford Algorithm: Um algoritmo de caminho mais curto que encontra o caminho mais curto em um grafo ponderado com arestas de peso negativo.

Algoritmos de Busca 🔥


  • A Algorithm*: Um algoritmo de busca heurística que encontra o caminho mais curto entre um nó de origem e um nó de destino.

  • Binary Search Algorithm: Um algoritmo eficiente para encontrar o valor desejado em uma lista ordenada.

  • Linear Search Algorithm: Um algoritmo simples para encontrar um valor em uma lista, percorrendo-a sequencialmente.

Algoritmos de Ordenação 🔥


  • Tree Sort Algorithm: Um algoritmo de ordenação que constrói uma árvore binária de busca a partir dos elementos a serem classificados.

  • Tim Sort Algorithm: Um algoritmo de ordenação híbrido derivado do merge sort e insertion sort, utilizado como algoritmo padrão de ordenação em Python.

  • Shell Sort Algorithm: Um algoritmo de ordenação eficiente, uma generalização do insertion sort que permite a troca de itens distantes.

  • Radix Sort Algorithm: Um algoritmo de ordenação não comparativo que classifica inteiros processando dígitos individuais.

  • Cube Sort Algorithm: Um algoritmo de ordenação que divide a lista em cubos e depois ordena os cubos.

  • Counting Sort Algorithm: Um algoritmo de ordenação eficiente, especialmente útil quando a faixa de valores a serem classificados é relativamente pequena.

  • Bucket Sort Algorithm: Um algoritmo de ordenação que funciona distribuindo os elementos de entrada em um número finito de "buckets" e depois ordenando cada bucket individualmente.

  • Heap Sort Algorithm: Um algoritmo de ordenação baseado em estrutura de dados heap.

  • Selection Sort Algorithm: Um algoritmo de ordenação simples que encontra o menor elemento da lista e o coloca na posição correta.

  • Insertion Sort Algorithm: Um algoritmo de ordenação eficiente que constrói a lista ordenada um elemento de cada vez.

  • Bubble Sort Algorithm: Um algoritmo de ordenação simples que compara cada par de elementos adjacentes e os troca se estiverem na ordem errada.

  • Quick Sort Algorithm: Um algoritmo de ordenação eficiente e flexível que utiliza a estratégia de divisão e conquista.

  • Merge Sort Algorithm: Um algoritmo de ordenação que divide a lista em sublistas, ordena essas sublistas e depois as mescla.

Algoritmos de Problemas Específicos 🔥


  • N-Queen Problem Algorithm: Um algoritmo que resolve o problema de colocar N rainhas em um tabuleiro de xadrez de tal forma que nenhuma rainha possa atacar outra.

  • Maze Solving Problem Algorithm: Um algoritmo que encontra um caminho ou solução para um labirinto.

Algoritmos de Cache 🔥


  • MRU Cache Algorithm: Um algoritmo de substituição de cache que remove do cache o elemento que foi acessado mais recentemente.

  • LFU Cache Algorithm: Um algoritmo de substituição de cache que remove do cache o elemento menos frequentemente usado.

  • LRU Cache Algorithm: Um algoritmo de substituição de cache que remove do cache o elemento que foi menos recentemente usado.

Outros Algoritmos 🔥


  • Knight Tour Algorithm: Um algoritmo que resolve o problema do passeio do cavalo, que consiste em encontrar um caminho para o cavalo passar por todas as casas de um tabuleiro de xadrez exatamente uma vez.

  • Hamiltonian Path Algorithm: Um algoritmo que resolve o problema de encontrar um caminho que visite cada vértice de um grafo exatamente uma vez.

  • Ford Fulkerson Algorithm: Um algoritmo para encontrar o fluxo máximo em uma rede de fluxo.

Algoritmos de Codificação 🔥


  • Huffman Algorithm: Um algoritmo de compressão de dados que utiliza códigos de tamanho variável para representar os símbolos na fonte de dados.

  • CRC32 Algorithm: Um algoritmo de verificação de redundância cíclica (CRC) que produz um valor de verificação de 32 bits para dados de entrada.

algorithms's People

Stargazers

Francisco dos Santos avatar

Watchers

Francisco dos Santos avatar

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.